Заговорённые
Часть 1. Над землей. Глава 1
Резкий запах озона. Затем — смрадный выхлоп, вязкий, мазутный.
Лёгкие обожгло холодом и сухостью подвала, где вентиляция давно прекратила выполнять свою задачу и гоняет по кругу отработанный технический угар. Андрей кашлянул и прикрыл рот ладонью — в горле тут же осела горькая пыль. Воздух оказался очень тяжёлым, плотные частицы заскрежетали на зубах.
Переход совершился мгновенно, как пробросило через узкий зазор между кадрами киноплёнки. На сетчатке ещё завис послеобраз залитого солнцем тротуара, на него ретушью наползали мрачные тени стен. Артефакт при плохом сжатии видеопотока: старый кадр ещё не стёрся, а новый уже искажает изображение, проступает поверх перспективы.
Пару секунд назад стоял на улице, над головой сияло солнце в чистом небе. Теперь вокруг полумрак, низкий потолок — можно тронуть рукой, першение в горле, и застывшая тишина.
Тело ещё помнило тепло летнего дня: мягкий ветерок, пахучие оттенки недавно скошенной травы и нагретой городской пыли. Сейчас холодно, по коже бежит озноб. Аромат свежего эспрессо из кофейни на углу не затих, отдаляясь, но исчез разом, как при смене канала, и переключился в отчётливую затхлость. Запах знакомый, так пахнет из давно не чищенных серверных стоек. Попробовал вздохнуть поглубже, грудь сдавило тугим обручем — кислорода в воздухе и на воробья не хватит.
Перекрытия из шершавого композита. Подошва скользнула по гладкому полу — непривычное покрытие: не бетон, не плитка. Пол зудит вибрацией, внизу рокочут мощные трансформаторы, судя по всему, работающие на износ. Гул не равномерный, рваный, с трудом проходит через массивные перекрытия. Без направления, исходит сразу со всех сторон, резонирует в тесном пространстве.
»Требуется идентификация« — хрипнула чёрная коробочка под потолком.
Что ещё за идентификация? ФИО?
— Кварцев Андрей Геннадьевич, пятое августа семьдесят восьмого года, — выпалил заученную в юности армейскую скороговорку.
Не подошла.
Он не узнал свой голос — сухой, с хрипотцой. Излишне громкий для тесного пространства.
»Требуется идентификация« — снова проскрипела коробка.
Обычно голосовое распознавание срабатывает мягко, с вежливым музыкальным писком, но штуку под потолком так не настроили. Производитель даже не пробовал создать дружелюбный интерфейс для устройства.
И тактильной приятности не заметно. Грубые края, неотшлифованные поверхности. Разглядел крепёж. Нет винтов под крестовую отвертку или звездочку — коробка прикреплена прямо к потолку мощными анкерами, вбитыми прямо в бетон. Техника, рассчитанная на десятилетия работы без вмешательства. Без индикаторов или логотипов. Вандалозащищённый корпус, не видны сервисные лючки или вентиляционные отверстия. Неужели внутри нет ничего, требующего охлаждения?
Стыки панелей грубые, металл чёрный, крашенный. На боку пролегли глубокие царапины — пытались вскрыть или содрать ногтями. Из-под царапин просвечивает светлая эмаль.
На устройстве ни маркировки, ни наклейки. Копеечные роутеры обычно имеют маркировку с паролем и серийным номером, тут же ни одной этикетки. Армейский аскетизм. Стыки сварены в спешке, без заботы о шлифовке.
Объектив сканера смотрел мёртвым зрачком, ожидая порцию данных в отклике. Тусклым белым цветом мерцала линза в глуби чёрного глаза. По спине пополз неприятный холодок, странно она мигала: неприветливо, и подозрительно синхронно такту участившегося сердцебиения. Техника с механическим вызовом следила за посетителем. Вахтёр, сторож турникета, не имеющий реального интереса до имени и документов.
»Требуется идентификация« — настойчиво повторилось сверху.
Сухой синтезированный хрип, лишенный пауз и вдохов, не пытался имитировать человеческие интонации. Алгоритм воспринимал посетителя набором параметров. Хрип динамика царапал слух. Процесс работал в цикле, раз за разом натыкаясь на неизвестную переменную и требуя ввода корректных данных.
— Мои данные в паспорте. В загранпаспорте. У меня есть пропуск на работу! — лихорадочно рылся по карманам, доставая пластиковые карты и пропуск.
Синяя карточка ведущего системного администратора «ИнфоТех-Сервис». Карточка тёплая, опять лежала с телефоном. Вытаскивая, вспомнил ругань с охраной на прошлой неделе из-за размагниченной ленты. Золотистый чип. Так был горд им всего час назад, когда покупал утренний кофе. А сейчас протягивал карточки обеими руками — дикарь задабривает разгневанного идола бесполезным подношением.
Кончики пальцев онемели от холода, и ламинированный пластик выскользнул, с сухим стуком упав на пол. При наклоне снизу обдало новой порцией технического выхлопа. Судорожно сжал карточки.
«Требуется идентификация„ — в очередной раз проскрежетало сверху.
— Да ну вас, — вспылил Андрей. Невиданная наглость. Его игнорировала хренова голосовая машинка.
С размаху ударил кулаком по панели. Обожгло тупой болью — панель оказалась твёрже, чем выглядела. Провёл ладонью по поверхности, ища швы или стыки, но перекрытие построили монолитным, без единой щели.
Зрение адаптировалось, проступили контуры двери с обычной поворотной ручкой. Металл обжёг ладонь. Прежде чем открыл дверь, догнало осознание происходящего. Ещё пять минут назад волновался о дедлайне по проекту, уговаривал себя не захандрить и всё-таки сходить в бар с Лёхой. Ноги предательски ослабли, в коленях забилась мелкая судорога. Воздух неправильный. Тишина необычная. Один за другим отлетали варианты: сложный розыгрыш? Наркотики? Похищение с использованием декораций? Виртуальная реальность? Слишком всё настоящее. Вцепился в волосы, успокаивая дрожь в руках. Совсем не похоже на розыгрыш. Не пахнет приключением.
Дернул ручку, дверь оказалась не запертой.
Снаружи ослепила вспышка дневного света. Зажмурился, втирая кулаки в веки. Перед глазами поплыли цветные пятна.
Отнял руки от лица. Пятна помигали и растаяли, окружающий мир прояснился. Повертел головой, огляделся по сторонам.
Незнакомая местность. Город не похож на настоящий. Панорама однотипных зданий. Одинаковые коробки с ровными проёмами окон. Без балконов и без краски. Плоскости без швов, целиком отлитые в гигантских формах. Нет внешних блоков кондиционеров. Нет связок кабелей и следов ремонта. Фасады выглядели непривычными, лишёнными городской отделки — голые стены.
Геометрия улиц пугала прямотой линий и полным отсутствием уличной сутолоки. Без вывесок и рекламных щитов. Каждое здание шло копией предыдущего, создавая эффект коридора. Графитовый асфальт тянулся до самого горизонта, а там серые коробки окончательно сливались в единую массу, неразличимую за плотной завесой смога. Глядя вдаль, Андрей не видел ни пределов района, ни изменений в ландшафте — лишь монотонное, сводящее с ума повторение бетонных кубов, тонущих в серой хмари.
Город напоминал печатный узел: серые дорожки улиц, по ним электронами, с механической синхронностью курсируют фигурки. Поток отмерял шагами положенную норму асфальта. Прохожие не ходили — сновали. Выходили из распашных дверей, торопливо шли до нужного здания, забегали внутрь. Вливались в дверные проемы, избегая столкновений, не меняя темпа. Монотонно текли по асфальту. Поршни в работающем двигателе. Электрички на маршрутах. В потоке отсутствовала привычная беспорядочность мегаполиса — чёткие направления движения, без случайных остановок или смен маршрута. Никто не сверял карту в телефоне. Никто не завязывал шнурки или не вскидывал голову к небу.
Небо над головой не имело глубины. Плоское, затянутое слоем серой пелены. Свет дробился в ней, лишая предметы теней. Здания-монолиты уходили вверх, вонзались в вязкий кисель, и теряли очертания на уровне тридцатых этажей. Город не имел крыш: бесконечные серые стены растворялись в грязном тумане. Улицы — донья колодцев, откуда не разглядеть ни звёзд, ни облаков.
Вверху метались птицы. Много — десятки, сотни. Силуэты прорезали смог, оставляя за собой едва заметные, тут же затягивающиеся вихри. Их полёты смотрелись неправильно — они не парили, но перемещались резкими, ломаными зигзагами, будто в фильме с вырезанными кадрами. На крыльях слепяще вспыхивало солнце, бликовало резкими зеркальными искрами.
Не успел изучить странных птиц, громкий звук за спиной заставил вздрогнуть.
Чёрный куб, блок вроде снятого с колес вагончика, откуда он вышел, загудел и затрясся. На крыше замигала оранжевая лампа, завыла сигнализация. Слух уловил знакомые нотки перегрузки конденсаторов. Лампа мигала в ритме закодированного сигнала об ошибке. Потянуло перегретой медью. Хорошо знакомый оттенок — так пахнет из корпуса за секунду до отказа блоков питания. Куб дребезжал всё яростнее, надрывно гудел. Корпус ходил ходуном, металл визжал, сопротивляясь давлению перегретых потрохов.
— К черту! — торопливо отодвинулся подальше. Не нравилось ему всё это. Ни город, ни люди, ни дребезжащая будка.
Платформа под ногами вздрагивала в такт завыванию сигнализации, и вой пробирал до костей, сокращая мышцы в непроизвольном спазме. Сомнения пропали: время на раздумья вышло. Нужно сматывать удочки.
Платформа стояла около одного из зданий. Лестницы или лифта нет. Приблизился к краю, оценивая высоту. Земля далеко, метра три, не меньше. Высоковато для комфортного прыжка, но не смертельно.
Свесил голову вниз. Бетонный желоб улицы выглядел глубокой канавой. Андрей почувствовал себя загнанным на дерево котом. Архитекторы не предполагали схода с платформы не по регламенту. Вокруг ни поручней, ни ступеней. Поверхности отвесные и гладкие, не зацепиться, ни замедлиться при скольжении. Асфальт внизу застыл западнёй.
Перелез через край, повис на вытянутых руках, заболели пальцы. До земли чуть больше метра — не критично, но камень внизу не встретит мягкой посадкой. Задержал дыхание, поймал взглядом носки ботинок, и разжал руки. Асфальт метнулся навстречу взгляду.
Земля оказалась жёсткой. Подошвы хлопнули о покрытие, отдались тупой болью в пятках, колени спружинили, и он рухнул на бок, ободрав ладонь. Но по крайней мере, не сломал ничего. Рывком вскочил, шипя сквозь стиснутые зубы. Вскинул голову, и замер на месте.
Из-за ближайшего здания вывернул дрон. Чёрный, угловатый, весь в царапинах, с четырьмя гудящими винтами. Оптика остановила бордовый крест на покинутой платформе.
Машина зависла, винты подняли вокруг небольшой шторм из пыли и мелкой крошки. Человек застыл, боясь выдать себя шевелением. Камера совершала микродвижения, анализируя пустую платформу. Визг электроники вызвал дрожь в затылке.
Агрегат висел совсем близко. Поток ветра от винтов ударил в лицо. Пахнуло накалёнными микросхемами. На лбу выступила испарина. Визг перешёл в оглушающий ультразвуковой свист, пронзил болью в висках. Механизм грациозно вильнул в сторону, накренился вбок. На поцарапанном корпусе промелькнуло искаженное отражение крошечной нелепой фигурки.
Носовая часть дрона раскрылась. Воздух вспорола очередь. Снаряды ударили в пол платформы, где человек стоял полминуты назад, выбивая крошку и фонтаны пыли из неровных отверстий.
Человек кинулся прочь, через толпу. Никто не среагировал, не повернул головы ни на выстрелы, ни на воющую сигнализацию, ни на расталкивающего прохожих беглеца. Со свистом вылетали куски бетона, платформа вздрагивала от попаданий, но поток даже не сбивался с шага. Мелькали равнодушные лица: глаза смотрят перед собой, зрачки не расширены, челюсти сжаты. Поток двигался, игнорируя стрельбу незначительным фоновым шумом. На лицах не видно ни удивления, ни страха. Пустота и полнейшее равнодушие. Люди выглядели извлечёнными из вакуумных упаковок роботами, которых отправили исполнять заданный маршрут. Одежда из грубого матового полимера, лишенная пуговиц или молний. Ткань не шуршала, а издавала едва слышный скрип.
Андрей забежал в проём между двумя домами и привалился к стенам в углу, пытаясь отдышаться. Поднял голову к небу и только сейчас странность птичьего полёта обрела смысл.
Сверху летали не птицы. Дроны. Сотни. Тысячи. Перемещались непредсказуемо и быстро, методично сканируя улицы. На поверхность ложились ровные квадраты перекрестий прицелов. Один снизился, приблизил перекрестье, и беглец снова помчался, не зная куда, лишь бы подальше от страшных огней.
На уровне земли, прямо среди толпы, вспыхнули резкие световые пятна. Бесплотные рекламные стенды, установленные вдоль обочин. Рваными кадрами мерцали среди толпы цифры и обрывки фраз, выскакивали на изображения рывками, будто выталкивали силой. Успел выхватить на бегу взглядом надпись. «ПРОВЕРЬ СВОЙ КОД!» Ниже, чуть мельче — «ВЫЖИВАЙ». Что за код?
Баннер мерцал и распадался на пиксели. Буквы рассыпались и вновь собирались, транслируя зацикленное «ВЫЖИВАЙ». Рядом с надписью «ВЫЖИВАЙ» стилизованный символ вопросительный знак, заключённый в гексагон.
Не мог не обратить внимание на структуру изображения — не лазерная проекция, плотное облако светоизлучающих наночастиц. Картинка едва заметно рябила, подчиняясь порывам ветра, программная коррекция мгновенно возвращала частицы на место, не позволяла лозунгу исчезнуть полностью. Технология выглядела преувеличенно сложной и дорогой для уличной агитации. Не обычная реклама. Агрессивные цвета вызывали жжение. Приходилось постоянно щуриться. Не маркетинг, а средство гипноза. Город кричал на него через световые сигналы о подчинении и проверке загадочного кода. Буквы отпечатывались на сетчатке и неохотно уходили, всплывая фантомами при закрытии век.
Человек прорывался сквозь призрачные стены света, распадающихся на мерцающий цифровой шум. Над головой проплывали гигантские лозунги «ЛОЯЛЬНОСТЬ = СЫТОСТЬ», а прямо под ноги бросались проекции улыбающихся младенцев с яркими пятнами чипов на запястьях. Голограммы не имели плотности, но их сияние порождало цветные фантомы, не исчезающие даже после зажмуривания. Раз увидев, скрыться от навязчивого визуального мусора уже не представлялось возможным.
Призывы били по глазам буквально на каждом шагу, всплывали над каждым проемом. Мерцали зыбкими надгробиями посреди улицы. Всплывали со всех сторон, наслаиваясь друг на друга, создавая лабиринты из света и приказов. Прохожие проходили через голограммы, не моргая и не замедляя шага: одежда на миг окрашивалась в ядовито фиолетовый, а лица прохожих — в тревожно красный цвет. Из-за плотного воздуха и угла зрения огни до последнего момента смотрелись неясным маревом.
Впереди стояла толпа. Длинная очередь тянулась к очередному кубу — будке, стоящей на земле. Люди по одному входили внутрь. Проводили внутри не больше минуты-двух. Выходили с облегчением на лице — первая замеченная эмоция. И уходили прочь, смешиваясь с толпой.
Очередь не редела и не роптала. Те, кто стоял сзади, делали синхронный шаг, продвигаясь на позицию. Работа стека данных, где каждый новый запрос ожидает очереди на обработку. Прохожие обтекали будку, не замедляя шага, для них такие кубы — явно типовой ландшафт.
Перехватило дыхание. Всё было не так. Совсем не так.
Сверху вновь зашипел динамик — безинтонационно зазвучал искажённый голос. Нечеловечески громкий.
«ГРАЖДАНИН. ИДЕНТИФИКАЦИЯ ОТСУТСТВУЕТ. НАЗОВИТЕ ЗАГОВОР.»
Над ним повисла очередная тень. Жужжание стало громче и он застыл. Так бывает в детских кошмарах, ноги не слушаются, и крик застревает в горле. Детский кошмар, ставший явью.
«НАЗОВИТЕ ПОДТВЕРЖДЁННЫЙ ЗАГОВОР. В ПРОТИВНОМ СЛУЧАЕ БУДЕТ ПРИМЕНЕНО УНИЧТОЖЕНИЕ.»
Беглец окаменел под прицелом, повторял приказ, не понимал, что от него требуют. Архаичное слово, встречаемое в легендах. Механический голос требовал не код и не пароль. В бездушном требовании озвучился отголосок древних сказочных ритуалов. От него требовали заклинание, магическую формулу, единственную, способную отвести смертельную угрозу.
Платформа медленно разворачивалась. Бордовый прицел остановил фокус на груди. Внутри механизма лязгнуло, динамик неожиданно выдал до боли знакомый двухтональный сигнал прерывания связи с устройством. Прицел задрожал и с противным воем ушёл в сторону.
Смысл происходящего ускользал всё дальше. Ясно одно: здесь он — чужой. И его хотят убить.
Глава 2
Свет мониторов и затхлость рециркуляции слились в привычный и давно надоевший фон. Улей-1. Ангар без окон уходил далеко вдаль, открывая несчётные ряды однотипных столов. И сотни кубиклов — для операторов более высокого разряда, класс B.
Зал монотонно шумел рабочим периодом. Техника работала беззвучно, но гудел сам воздух от дыхания и шевеления человеческих тел. Глухо рокотал хладагент в магистралях под фальшполом. Синеватое свечение ложилось на лица. Здесь нет времени суток. Бесконечные циклы обработки данных и тихий перестук клавиш. Волоски шевелились на коже — в зале постоянно накапливалось статическое электричество.
В Улье не рекомендовалось разговаривать и глазеть по сторонам. Коллег вокруг следовало считать не коллегами, но функциями. Слева — номер 402, справа — 404. Имена — избыточная личная информация. Исчезнет завтра 402-й — через час место займёт новый, такой же сутулый и остекленелый.
Назойливо запищал сигнал перерыва. Виэн мог бы выйти на улицу — привилегия, недоступная тысячам других сотрудников, но чем заниматься на улице — слушать над головой монотонное гудение? Читать всё те же одинаковые тексты на голограммах и заключать с самим собой пари, через сколько выплывет новый текст? Считать, сколько народу столпилось под тусклыми голограммами «Проверь Свой Код Сегодня»?
Очереди к будкам. Немой страх. Болезненное ожидание. Сжатые губы. Простые люди, полное подобие друг друга. Каждый ждал своего часа. Проверки пароля. Возможно, приговора. А он не ждал.
Лицо, отражённое в полупрозрачном стекле выключенного соседнего монитора, было столь типичным, что могло выпускаться вместе с кубиклом. Острые скулы, запавшие от хронического недосыпа глаза. Коричневый ёжик волос — стандартная стрижка № 4, обязательная для технических работников класса »B«. Среднестатистический полустёртый винтик. Незаметный. Никто не заподозрит раздрай внутри сутулого парня в мешковатой форменной толстовке.
Отражение лгало. За блеклой оболочкой скрывался не подлежащий просчётам.
Путь от жилого блока до Тех-Сектора занимал сорок минут в общественном маглеве. Сорок минут индустриальной панорамы. Мельканье рядов жилых башен с маленькими окошками. На платформах — манекены. Никто не поднимает глаз, не вертит головой, боясь привлечь лишнее внимание.
Внутри капсулы все молчали, подозрительно косились друг на друга. Соседи по вагону старательно притворялись тенями, во избежание случайных касаний прятали ладони в карманы форменных одежд. Роботы наблюдения могут любой необычный жест истолковать нервозностью или скрытой угрозой. Паранойя заражала — Виэн и себя нередко ловил на задержке дыхания при прохождении сканеров.
Никаких улыбок или недовольства. Лица-маски. Утром девушка напротив, прочитав сообщение, на секунду сжала губы — порыв заплакать, и тут же рефлекторно глубоко выдохнула и расслабила мышцы лица. Вбито в подкорку: эмоция повышает сердцебиение, и может привлечь контроль. Любое чувство давить в зародыше. Жизнь без эмоций. Допустим регламентированный перечень стандартизованных взаимодействий. На пустых кукольных лицах разрешено окаменевшее безразличие. Тоска.
Перед самым входом на работу видел — над женщиной, уронившей сумку, завис дрон. Женщина стояла, не шевелясь, пока цвет луча не пожелтел, разрешая продолжить движение. Цвет разрешил — спокойно пошла дальше. Жить под постоянным страхом смерти требует привыкания к этому состоянию.
На улицу не хотелось.
Синтетический квас холодил горло. В соседнем кубикле бледный Толик разворачивал уведомление с красной полоской. Текст не разобрать, впрочем, суть и так ясна: «ВАШ ЗАГОВОР ИСТЕКАЕТ, ЯВИТЕСЬ ДЛЯ ПРОВЕРКИ». Не повезло.
Толик потел и тряс головой. За мутными очками металась лихорадка страха. Толик хотел что-то произнести, но не подобрал подходящих слов. В кубиклах лишние разговоры — минус пять баллов за снижение производительности. Сидели рядом пять лет, а Виэн даже не знал, есть ли у соседа семья. Близость опасна: утащат одного, проверка придет и к тем, кто рядом. Отвёл взгляд.
Любопытно, в чём вина соседа? Громко ответил на звонок? Занервничал, когда РБЛ упал на выдаче покупки? А может, и ни в чём — номеру могло выпасть случайное понижение. Лотерея пострашнее наказания. Почему истекает РБЛ — не всегда известно. Назначение числа при рождении — тоже. Профанация. Иллюзия предсказуемости, скрывающая истинный замысел для удержания людей в постоянном страхе.
Датчики контроля уже считали скачок давления. Теперь им известно — Толик испуган. А страх — повод для проверки.
Контроль безошибочно работал на бытовом уровне. Встроенные в потолки датчики и микрофоны не знали эмоций, но ловили физические отголоски, малейшие изменения пульса и давления, отклонения в динамике голоса.
Виэну повезло.
Ему такие уведомления не приходили. В очередях в будку стоять не приходилось. Не приходилось произносить кода под прицелом. Жил под невидимой защитой, с самого детства. Поняв, поначалу испытал облегчение. Но оно быстро сменилось тревогой. Хорошо, когда проблемы обходят стороной, но почему?
Странности преследовали его РБЛ с момента выдачи. Ещё в самый первый день, когда неожиданно для всех получил рейтинг на полтысячи выше самых успешных учеников. Ни у кого из окружения никогда не достигал уровня выше двух с половиной тысяч, а ему сразу выдали три с лишним. И тогда же, впервые прочтя число на экране, совершил грубейшее нарушение торжественной церемонии — напутал слова клятвы лояльности, да ещё и не набрал индивидуальный код перед произнесением. Патрули сорвались со всех сторон площади, сканируя искажённое страхом лицо. Ждал немедленного обрушения в штрафную зону, а число помигало — и не изменилось. Не списали ни балла.
С тех пор экспериментировал не раз. Опаздывал. Превышал лимиты. Заходил в закрытые директории, менял приоритеты процессам, подтирал следы чужих провинностей -пытался понять, где край возможностей. И не понимал. Нарушения регистрировались, но ничего не происходило. Подлинный призрак — видят, но не могут коснуться. Подаренное чувство вседозволенности пьянило, но смешивалось с тотальным одиночеством. На свою удачу, он вырос достаточно разумным человеком, чтобы сообразить — такую странность не стоит афишировать для окружающих.
Допил квас. Закинул банку в рабочий утилизатор, поленился идти до общественного. Нарушение. Штраф 4 балла. Число мигнуло на экране утилизатора, и не изменилось.
Может, всё-таки выйти на улицу? Ещё семь минут от перерыва.
Или вообще уйти домой пораньше? В законные двенадцать квадратных метров. Нет, там совсем чудовищно скучно. Умная стена покажет успокаивающий пейзаж и одарит очередными непрошенными советами по гигиене. Для права на домашних животных РБЛ не дотягивает — нужно минимум 3500, растения без настоящего света не выживают. Лучше уж посидеть среди писка серверов и потоков чужих данных, тут менее ощутимо одиночество.
Виэна назначили на уборку программной пыли. Контроль отдельного сегмента, цифровой дворник. Работа походила на переборку старых вещей на чердаке, предназначенном для сноса. Чтение обрывков переписок, просмотр фрагментов видеозвонков и прочтение бесконечных отчетов о перемещении грузов. Городская база индексировалась лучше с каждым удаленным файлом. Каждый, кому доступна кнопка «Очистить» — соучастник великого забвения.
Люди больше не требовались для творчества или инноваций, лишь для поддержания стабильности данных. Для выполнения тысяч мелких задач, не доверяемых автоматике из-за конфликта версий. Город вырос в громадный, но застывший в развитии механизм. Ядро работало на коде неотслеживаемой давности с давно утраченной возможностью переписывания. Новые модули конфликтовали со старыми схемами хранения, любой автоматический скрипт очистки рисковал обрушить базу данных сектора. Проще и безопаснее посадить тысячу белковых интерфейсов для ручной перекладки данных из одной ячейки в другую. Им не нужно платить энергией, их время ничего не стоит, и вдобавок — иллюзия занятости. Большинство данных всё равно давно лишены контекста и смысла, принадлежат мертвецам или утратившим доступ.
Основная сложность заключалась в синхронизации устаревших данных с новыми устройствами. А ещё в перетаскивании гигабайтов мусора и затыкании мелких дыр в дряхлеющей городской сети. На мониторе текла река из обрывков логов и запросов. Вот чей-то фотоархив тридцатилетней давности: лица, природа, интерьеры — нужно стереть и очистить место для записей под старые методы слежения. Сохранил копию к себе на носитель — наверняка в старых записях всплывут забытые эмоции, интересно будет поизучать на досуге. Вот запрос на ремонт канализации в секторе Гамма-6, ячейка 3255, завис в очереди три года назад. Отправил запрос в dev/null — в небытие. Если трубу не починили за три года, значит, она давно никому не нужна. Там работа для могильщика, а не для инженера.
Большинство операторов класса B со временем перерождались в придатки терминалов. Теряли последние эмоции и амбиции. Ни оставляли себе ни желаний, ни мечт. Обрабатывали данные, боясь совершить ошибку, ведущую к понижению. Постепенно выгорали, полностью заменяя ощущения набором инструкций. В глубине души не хотел стать таким же и именно это порождало его маленькие, незаметные бунты. А копание в архивах было способом доказать самому себе — он ещё здесь.
Виэн нередко размышлял о причинах. Почему при наличии контрольных патрулей и биомодификаций, собственные технологии настолько тупы? В архивах попадались обрывки информации об эпохе до Очищения: о нейросетях, способных к самообучению, о гибких облачных архитектурах, об Искусственном интеллекте, способном рассуждать и рефлексировать. Волшебные сказки прошлого, ведь под запрет попадала любая технология, потенциально способная к непредсказуемому развитию или самостоятельному мышлению.
Но почему? В этом же нет логики. Ведь не страх перед восстанием машин из «Истории о ядерном сне» и не нарушение запрета на создание «Чёрного ящика» породили Доктрину Абсолютной Прозрачности. Доктрину создали такие же инженеры. А ДАП гласила: если код нельзя распечатать на бумаге и проверить линейной логикой — код опасен. Поэтому нейросети сочли сложными и непредсказуемыми. Их нельзя контролировать на сто процентов. А жёсткие скрипты — можно. И нейросети свели к нулю.
Правящий режим обратил себя в тюремщика, боясь собственного творения, могущего стать умнее создателя, и потому держал всю цивилизацию на решениях простых и надёжных, уровня молотка. Примитив надёжнее. Послушный инструмент лучше умного. ещё до рождения Виэна произошёл «Бунт Логики», когда автоматические системы управления в секторе Омега определили самый быстрый способ сократить расходы электричества — отключить вентиляцию в жилых блоках. Тогда погибло три тысячи, и именно тогда в код ввели предохранитель — операторов А-класса. Пусть контроль требует ручного труда, зато такие исполнители будут выполнять именно указанные инструкции. Сложность ведёт к недопустимому хаосу.
От мыслей отвлекла замигавшая точка на мониторе. Очередной бедолага с рухнувшим рейтингом убегает от ликвидации. Сейчас сигнал передадут на периметр, а дальше пойдёт обратный отсчёт. Интересно, что натворил для падения РБЛ?
На РБЛ стоял весь известный Виэну мир. Четырёхзначное число горело на каждом терминале, сканировалось каждым сканером, и определяло доступ ко всему: от калорий в талоне на еду до кубометров кислорода в блоке. Уровень падал при любой аномалии: всплеске эмоций, пропуске проверки. Поднять можно годами каторжного труда. Падение РБЛ ниже тысячи означало конец. Буквальный. Вызов в Будку, где после последней проверки снаружи встречал терминатор. Для финального обнуления.
А, вот и он. На одном из вспомогательных мониторов, транслирующих уличные камеры — функция, обычно используемая для контроля состояния периферии, промелькнуло пятно. Бегущий человек. Мечущийся. Движения диссонировали на фоне плавно плывущих теней других прохожих. Паника. Живая, неприкрытая паника.
За беглецом пристроился терминатор. Беглецу повезло: дрон — из старых поколений, с царапинами на корпусе, и выцветшим номером сверху. Не чета чёрным носителям смерти, патрулирующим центр. Старая, медленная машина, готовая на списание. Но и её неторопливые мозги не сравнимы со скоростью биологических реакций. Механизм просчитал движение и направил прицел. Остановил алый крест прицела на беглеце.
Выстрел.
Беглец в последнюю секунду рванулся в сторону и высоко подпрыгнул. Пуля прошла под ним, взбаламутила пыль на земле. Охотник взвыл мотором, заклинивший затвор перекосил равновесие, и он, ковыляя подранком, неровными прыжками полез вверх. Пока долетит до ремонтных цехов, пока восстановят работоспособность, пройдет минут пятнадцать. Если бы не общая сеть, беглец получил бы передышку.
Виэн приблизил изображение.
Человек ошарашенно следил за вихляющим полётом машины. Тяжело вздымалась грудь. Устремил взгляд прямо в объектив камеры — и показатели мгновенно зашкалили. Неподдельный страх, испуг, паника. И ещё незнакомая эмоция. ЭГ-3, высший уровень. Пришлось кликнуть на расшифровку — наизусть не вспомнил название.
Ярость. Дикая ярость. На ситуацию, на преследование. Эмоция, не встречал такой никогда в жизни. В зоне контроля эмоции атрофированы. Страх тихий, радость умеренная. А парень на экране — полыхал своими эмоциями. Ненавидел так искренне, что жар от его эмоций проходил сквозь монитор.
На экране зависло искажённое лицо — настолько чужеродная реакция выверенному миру Улья, что индикаторы на рабочем столе тревожно замигали жёлтым. Ярость была почти физически ощутимой, пробивала помехи камер. Виэн на миг завис перед экраном, завороженный выбросом жизни, не влезающим в рамки оценок.
Кликнул на значок РБЛ. Данные не открылись.
Изумлённо покликал ещё несколько раз. Цифры не открылись. Так бывает? Рейтинг благонадежности личности давал доступ ко всем благам. Но у этой личности РБЛ отсутствовал. И личностный код тоже — а это было абсолютно невозможной ситуацией.
Пальцы на секунду зависли над клавиатурой. Метнулись, набирая короткую команду открытия консоли. Действовать. Немедленно. Доступ к управлению закрыт тройным шлюзом, но ему, как оператору, известен код к доступу через отладочный порт. Если заметят использование порта, РБЛ обнулят в тот же момент, невзирая на аномалию. Рисковать ради незнакомца — зачем?
Пальцы проигнорировали ход разумных мыслей, на автомате вбили префикс администратора. Экран терминала мигнул — «ОТКАЗАНО». Ввёл обходной скрипт. По экрану побежал лог городской сети. Целевая камера. Идентификатор.
OVERRIDE_TARGET_LOCK: DRONE_UNIT_7B-23: INITIATE_SENSORY: FADE_VISUAL_INPUT: REALLOCATE_PRIORITY: SECTOR_GRID_DELTA_8
Нажал Enter.
Строки кода вспыхнули белыми лентами на экране. Беглеца не знал. Но такие неподдельные эмоции не встречал никогда раньше. И не мог остаться в стороне.
Прицел запрыгал, теряя фокус. Крест соскочил с беглеца. Незнакомец нырнул между двумя зданиями, и исчез.
На общем мониторе слежения, где секунду назад вспыхивала красная метка неопознанного объекта, прекратилось мигание. Метка перекрасилась жёлтым и исчезла, затерявшись в списке предупреждений. Для всех операторов инцидент исчерпан — ложное срабатывание датчика на птицу или другую помеху. Виэн лихорадочно стёр логи последних секунд, поёжился — под мышками выступил холодный пот.
Перевёл дух. Он дал фору. Крохотную, но всё же. Пока патрули будут обшаривать другой сектор, человек может успеть добежать до катакомб.
Глава 3
Андрей остановился и опёрся на камень, успокаивая дыхание. Ноги подгибались, сипло вырывались выдохи. Лабиринт одинаковых зданий уходил далеко за горизонт. Каждый поворот открывал всё ту же картину: такие же строения, такие же пешеходы. Бег на месте в бесконечности кошмарного сна, где ноги вязнут в невидимом киселе.
Архитектура не городская. У зданий нет привычных скруглений и фасок. Отделка без трещин, окна ровные, без подтёков на карнизах. Да и самих карнизов под окнами нет. Стекла моноцветные, с односторонней прозрачностью. Нет карнизов, нет кондиционеров.
Город выглядел рендером, куда не добавили шум и случайные дефекты, превращающие нагромождение бетона в место для жизни. Не видно растительности: не газонов, ни деревьев. Мусора нет. Геометрия улиц нарушена. Фантазия безумного математика: острые углы, искажённая перспектива.
Люди спешили мимо, равнодушные, молчаливые. На бегу влетел плечом в крепкого мужчину. Тот даже не охнул. Восстановил траекторию и продолжил путь, словно столкновение случилось с порывом ветра, а не с живым прохожим. Попытка схватить за куртку из плотного материала, похожего на затвердевший каучук, оказалась безуспешна — неподатливая одежда тут же выскользнула из пальцев. Не звякнули ключи или монеты в кармане. Лицо мужчины не изменилось. Это пугало сильнее, чем агрессия. Если бы толкнул в ответ или обругал в спину — вышло бы грубо, но естественно. Но быть пустым местом, живым призраком для сотен прохожих вокруг — пугало куда сильнее.
Винтокрылый визг звенел в ушах криком коршуна, упустившего добычу в последний момент.
Беглец лихорадочно озирался.
Гул города неразборчиво вяз белым шумом в простенках. Здания впитывали звук, не давали отражения, — даже открытое пространство ощущалось теснотой ловушки.
Привалил спину к очередной стене, кусками заглатывая воздух широко раскрытым ртом. Собственное дыхание звучало прерывисто и громко на фоне звукового штиля. Обезумевший барабанщик колотил в рёбра. На землю упала яркая капля. Машинально тронул плечо и зашипел. Поцарапал, продираясь в щелях между зданиями. Боль пришла с опозданием, и сразу забилась горячими толчками в ране.
Идентично неокрашенные коробки тянулись в мутную даль, проёмы между ними раскалывали стены чёрными трещинами. Однообразно потрескавшийся тротуар лил безликую реку между домами, нёс нескончаемый человеческий поток. Люди двигались в сомнамбулических схемах — из двери, по короткому участку тротуара, в другую дверь. Ни приветствий, ни встреч глазами — только монотонно шуршат подошвы.
Его паника контрастировала безмятежным выражениям их лиц, не реагирующим ни на крики о помощи, ни на вопросы. Лица гладкие, не выражают ни тревоги, ни радости. Марионетки под невидимыми нитями кукловодов.
Нет гомона голосов, смеха, ругани, плача детей. Шарканье по асфальту сливалось в монотонное шуршание, похожее на шелест пересыпаемого песка. Пока распихивал прохожих, доносились еле слышные обрывки фраз — сухие, невыразительные. Обмен пакетами передачи данных.
«…истекает через неделю…»… «…сегодня очередь дольше…»… «…активация вместе с детьми…»…
Звучало обрывками аудиодорожек, применённых для усиления эффекта реалистичности. Не было похоже, что эти слова были адресованы кому-то конкретно.
Взгляд отчаянно искал убежища. Впереди мелькнуло чёрным пятно — расщелина. Неровный пролом рваной раной выделился на гладкой поверхности. Полуразрушенный, опутанный тенями. Без дверей или их каркаса, обычный провал, откуда тянет сыростью. С трудом протиснулся внутрь. Испарения сырого камня наполнили ноздри, донеслось журчание.
Спуск вел в непроглядную глубь. Не лестница — длинный ровный желоб. Поверхность под ногами опасно полирована. Присел, пошарил руками в поисках опоры, но пальцы заскользили по засаленному покрытию. В спину толкнуло звуками винтов с улицы, и он пополз вниз, цепляя края желоба.
Рука шарила в поисках выступов, наткнулась на твёрдое. Зацепился пальцами, сдержал скольжение. Вытащил коробку, тяжёлую для своего размера. Поднёс к глазам. В последних отблесках света с улицы разглядел небольшой прямоугольный предмет. Металлический корпус был весь покрыт слоем серой окалины. С усилием потер о рукав. Под грязью тускло блеснула латунь. Зажигалка. Разглядел гравировку: схематичное изображение — птица с распростертыми крыльями. Сжал в пальцах. Ощущение металла успокаивало, вещь была солидной, не походила на мусор. Сунул в карман.
С каждым метром спуска света было всё меньше, а температура падала. Андрей полз на боку, выставив локти, чтобы не набрать скорость. Падающий сверху свет стремительно сужался в тонкую полоску. По обеим сторонам появился налёт — серая сухая корка, крошащаяся под ногтями. Наклон становился всё круче. Приходилось буквально вжиматься в пол, чувствуя холод камня, пробивающийся сквозь джинсы.
Спуск закончился ямой.
На высоте груди — площадка. Упёр ладони, выбрался на неё. Совсем темно, слабый свет сверху не долетал до дна, разбиваясь о выступы по пути. Изменился состав воздуха: исчезла химическая чистота поверхности, уступив место тяжёлому духу застоявшейся воды. Ноги то и дело натыкались на куски арматуры, старыми костями вросшими в бетон.
Городской шум окончательно стих. Провёл рукой — поверхности старые и влажные, при нажатии крошатся. Если наверху царил порядок, то здесь им и не пахло. Место заброшено десятки лет назад.
Пошарил по карманам в поисках телефона, движением большого пальца нажал кнопку фонарика сбоку. Глянцевое зеркало не реагировало на нажатия. Разряжен. Бесполезный кирпич. Хотел же зарядить перед выходом.
Ещё пару раз с силой вдавил кнопку в надежде на чудо, но экран остался мёртвым. Флагманский девайс с мощным процессором — кусок стекла и лития, не более ценный, чем камни под ногами. Потерю связи с сетью ощутил неожиданно болезненно. Привык к информационному потоку, без него ощутил себя брошенным в абсолютный вакуум.
Преодолел вслепую пару десятков шагов, впереди мелькнуло свечение. Чтобы не скользнуть на камнях, аккуратно продвигался вперёд небольшими шагами. В темноте легко налететь на острый край камня, лучше этого избежать.
Свет шёл от луж. Не освещал пространство целиком, резал видимую зону на куски. Беглец смог разглядеть основания колоссальных опор, уходящих в непроглядную высоту. По мере привыкания, различил слабые очертания огромного пространства. Он не в подвале здания, гораздо глубже. Воздух похолодел, добавил слабое послевкусие ржавчины.
Под ногой хрустнуло стекло. Носок ботинка зацепил железную скобу. Споткнулся о неровные рельсы, впервые сообразив, где он. Заброшенное метро. Бывшее депо.
Арочный потолок терялся в высоте. Эхо шагов летело во все стороны, не встречая преград, и возвращалось искаженным, глухим рокотом, указывая на колоссальные размеры пространства.
Территория закончилась туннелем.
Андрей брёл по рельсам, ровным шагом переступал по шпалам, уходя как можно дальше от ужаса за спиной. Шпалы лежали с равными интервалами, задавая шагам гипнотический ритм. Шаг-шаг-шаг. Донёсся искажённый крысиный писк, двоился, точно исходил не от животного, а от неисправного динамика или механизма с севшей батарейкой. Остановился, напрягая слух, писк исчез, повесив с исчезновением звон в ушах и ощущение чужого дыхания в затылок.
Пот потёк по хребту, куртка прилипла к телу. Резко развернулся всем телом, выставив перед собой пустые ладони, но мрак за спиной по-прежнему встретил однородной пустотой. Разум подсказывал, в пустоте никого нет, но инстинкт вопил об опасности, скрытой в каждом невидимом углу.
Темноту разрядило желтоватое мерцание аварийных огней. Прибавил ходу и вскоре наткнулся на небольшое углубление, подсобку для ремонтников. Пошарил по полкам, наткнулся на прочный вделанный ящик. Крышка прихвачена пломбой — солидной свинцовой печатью. Сдирая кожу на пальцах, скрутил ветхую проволоку и рванул крышку.
Первая удача. Внутри, в ложементе из рассыпавшегося поролона, лежал фонарь. Тяжёлый, в обрезиненном герметичном корпусе из литого магниевого сплава, с необычно большим линзовым блоком. Корпус из металла. Рядом с кнопкой выделялся значок маркировки. Поднёс к самому лицу и с трудом разглядел тусклую эмблему «Метрострой-Резерв» и подпись: «Гарантийный срок хранения — 50 лет».
Перехватил поудобнее, с силой затряс. По весу и тому, насколько плавно, без лишнего дребезга заходил магнит внутри — не дешёвый сувенир. Внутри завыл магнит, разгоняя заряд. Тихий щелчок в блоке управления вознаградил старания — изотопный маркер выдал стартовый импульс на схему.
С силой вдавил прорезиненную кнопку. Тугой переключатель сработал, издал сочный и звучный щелчок. Надёжная и примитивная механика. Прибор из тех, которые делают для работы в любых условиях.
Белый клинок разрубил мрак на полсотни метров. Направленный столб света из фонаря. Очень мощный луч для обычной оптики. Стандартные батарейки столько не выдадут — внутри крутые ионисторы. Свет сиял неестественно бело, выхватывал пляс пылинок и паутины проводов. Луч вытянулся прямо и плотно, практически не рассеивался по сторонам. Лазерный диод с накачкой.
Вес приятно оттягивал локоть, давая иллюзию найденного оружия в неразберихе.
Тьма отступила под фотонным напором, а вместе с темнотой и паника стала сдавать позиции. Уже увереннее продолжил движение. Свет выхватывал выцветшие, отслаивающиеся остатки забытых плакатов. На истлевшем плакате угадывалось лицо женщины, рекламирующей косметику. Улыбка, наполовину съеденная плесенью, зловеще вытянулась в оскал.
Рельсы вывели к платформе. Призрак станции. Раньше ходили тысячи людей, а сейчас — ни души.
Крался по платформе, избегал наступать на хрустящие осколки плафонов. В конусе света мелькала облупившаяся плитка, зияли дыры в потолке, лианами свисали пучки ржавых проводов. Под сводами с завываниями гулял сквозняк. Лианы покачивались, шевеля причудливые тени по стенам. В колыхании воздуха длинными чёрными щупальцами прыгали тени от колонн.
Разбитые скамейки стояли искорёженными, обивка растрескалась пластиковыми лохмотьями. Повсюду разбросаны обломки неизвестного происхождения, ровным покровом покрытые толстым слоем пыли. Перешагнул через опрокинутый турникет. Ржавые изогнутые ребра торчали вверх останками древнего зверя, выброшенного на берег. Открылась взгляду бесформенная груда навала. Разглядел брошенные рюкзаки и сумки — десятки, сотни. Ткань давно истлела, спрессовалась в единую массу с землёй, оставшиеся пряжки и молнии тускло поблескивали под лучом.
Повсюду сырость и запустение. Повёл рукой, свет побежал по участку декора. Когда-то яркие надписи слабо угадывались в выцветших пятнах за слоями копоти и плесени. Прищурился, не разобрал, сдернул рукав, потёр им спрятанную надпись. Пыль въелась намертво, пришлось приложить всю силу руки. Выделились контуры букв.
«ОХ…Т…ЫЙ……ЯД»
Охотный ряд! Это же Москва. Его Москва. Узнал очертания колонн и изгибы свода. Провёл дальше, и луч упал на другую табличку — маленькую, наполовину скрытую отслоившейся краской. Наклонился, с трудом разобрал по буквам плохо различимый текст:
«Московский Метрополитен. Линия 7-бис. Закрытие станции 'Центральный Узел. Капитальный ремонт: 2095 год. Дата следующего планового обслуживания: 2125 год. Переход на Глобал-Протокол 4.0.»
Сначала не сообразил — перечитал несколько раз. Когда понял — перехватило дыхание. Цифры застучали в мозгу. «2125 год». Не переместило — зашвырнуло в будущее, будущее, определяемое апатией и угрозами, требующих предъявления мистического Заговора под угрозой расстрела.
Он попятился, пока не уперся спиной в колонну. Фонарь запрыгал в ладони — тени задёргались и метнулись по сторонам. 2125. Сто с лишним лет! От осознания застыл в истинном ужасе. Все знакомые умерли. Не просто умерли — кости превратились в прах. Города больше нет. Страны — нет. Мира — нет!
Прямо над головой, тускло блеснула старая рекламная наклейка — клоун с оторванным краем улыбки зазывает на распродажу мебели. Коснулся указательным пальцем — бумага осыпалась пылью.
Срок не представлялся. Сменились поколения, пласты культуры ушли в небытие, а технологии сделали шаг в непонятную, уродливую сторону. Одна мысль об уродливой коробке, стоящей где-то там, наверху, на месте родного дома, вызывала острую вспышку паники.
Вспомнил недопитую чашку чая на кухонном столе. Глупость, пылинка. Но сейчас эта чашка виделась более важной, чем все открытия будущего. Пускай за сто лет вода испарилась, фаянс покрылся трещинами, а сам дом превратился в груду мусора под подошвами равнодушных людей, всё равно хотелось верить её наличие на столе где-то там, поверх тёмного потолка.
2125. Не набор цифр, код приговора. Родители, мамин голос в трубке, который часто сбрасывал, бормоча «перезвоню», и вечно забывал. Её смех и постоянные советы надеть шапку. Отец с вечными рыбацкими историями, известными наизусть до мысленных стонов, когда тот в очередной раз начинал рассказывать их гостям. Немногочисленные друзья, Лёха, с котором накануне планировали пойти в бар, наверняка, сейчас названивает, недоумевая, куда пропал собутыльник. Ирка — ведь так и не решился написать ей сообщение. Надоедливые коллеги. Кот, рыжий, толстый наглец, прямо сейчас сидит у двери, ждёт скрипа ключа в замке и мяукает, не понимая, почему миска пуста, а хозяин не приходит. И не придет никогда. Кот умрёт от голода, запертый в квартире.
Не умрёт. Уже умер! Сто лет тому назад!
Квартира в Тушино с не до конца выплаченной ипотекой. Субботнее кино при походе в гипермаркет. Скучная, предсказуемая, но собственная жизнь исчезла. Сгинула без следа.
Сполз по колонне на пол платформы, привалился спиной к холодному камню. Не страх и слёзы, внутри не было подходящей эмоции. Фонарь покатился по полу, луч уперся в потолок, выхватывая кусок старой лепнины.
Всё, составлявшее действительность: ежедневные проблемы — протечка крана, дедлайн на работе, ссоры с мамой по телефону — нелепый, сладкий сон из давно и безвозвратно исчезнувшего мира. Вся жизнь, от подъёма с утра до планов на отпуск, всё, два часа назад определявшее реальность, превратилось в ничто, потеряв по дороге его существование не выметенным мусором. Он — последний представитель своей эпохи.
Сидел долго — перестал замечать время. Холод пробрался под одежду, добрался до костей тела, ноги затекли. Какой смысл подниматься? В мире без завтра любая цель нелепа. Куда идти, если некуда?
Мир сглючил, и оставил его забытой ошибкой. Мысли вязко отупели, наползло бездумие. Хотелось выключить свет и пропасть во тьме, слившись с пылью на грязном полу.
Отвлекло тело, задрожавшее от озноба — на залитой голограммами поверхности стоял гораздо более тёплый климат, чем в подземелье. Притянул колени к подбородку в попытке сохранить остатки тепла. Темнота больше не пугала, стала финальной точкой — логичное завершение нелепого путешествия в не готовое к приёму нежданного гостя будущее.
Из-за кучи обломков раздался шорох. Сначала не среагировал. Какая разница? Пусть крысы. Или крокодилы. Пусть всё закончится. Но звук прозвучал вновь, громче. Под лучом метнулась тень. Худая, едва различимая фигура отпрянула от света, прежде чем успел разобрать черты лица. Тут кто-то есть! Живой человек, рядом, в заброшенных катакомбах. Появление чумазого силуэта подействовало пощечиной. Инстинкт чувства опасности глубже скорби — мышцы тут же напряглись. Страх отступил, перешёл в настороженность. Если есть кто-то живой, то у него должны быть и правила поведения. живые, то есть правила. А если есть правила, можно выиграть. Или хотя бы не проиграть.
Он не один. И вокруг ничуть не менее опасно, чем наверху. Катакомбы выглядят убежищем, но могут оказаться ловушкой. Медленно подобрал фонарь. Поднялся, вгляделся в темноту.
Глава 4
Виэн отправил остатки питательной пасты в утилизатор и откинулся на спинку кресла. Паста оставила во рту горечь консерванта — синтезатору давно пора почистить фильтры. Раз десять оставлял запросы, но никто так и не среагировал. Сломанный компьютер заменили бы за считанные минуты. Мельком глянул на опустевший кубикл Толика. Бессмысленная трата ресурсов: пять лет обучения — в мусор из-за разового скачка рейтинга.
Обдув вытягивал тепло, но тело бросало в жар от лихорадочного возбуждения. Совершение прямого нарушения правил, грозящего полным обнулением. И зачем? Ради обезумевшего от страха незнакомца, вытащившего в память забытую эмоцию.
За пять лет стёрты десятки тысяч жизней. Очистка информационного эха. Когда гражданин умирал или отправлялся на переработку, РБЛ аннулировался, но цифровой след автоматически не исчезал. Терабайты логов: списки покупок, маршруты прогулок, голосовые запросы к умным стенам и другим устройствам. Мусор забивал каналы, и приходилось их очищать вручную. Оператор давно привык к свертыванию человеческого существования в компактный пакет данных исчезает в /dev/null по нажатию одной клавиши. Команда — и нет ни памяти, ни следа о ней.
Но сейчас клавиша удаления не сработала. Беглец — не обычная ошибка. Явление, возникшее в нарушение схемы «родился — потребил — умер — стерт». Жив, но не существует. Он недоумённо рассматривал пальцы руки, впервые за все годы встретившие отсутствие реакции на стандартное удаление.
Из зала донесся шум — 326ой уронил гарнитуру и окаменел. Побледнел — штраф за нарушение порядка практически гарантирован, наблюдатель как раз обходил соседний ряд. Страх, пропитавший всё вокруг, вызвал приступ тошноты.
Покосился влево. В кубикле, расположенном по диагонали, номер четыреста девять. Ровная осанка, кисти-автоматы на клавиатуре. Вчера 409-й получил предупреждение за микросон на рабочем месте — минус 10 баллов РБЛ. Сегодня даже не моргал, сидел, вжав голову в плечи, боясь вдохнуть глубже, чем положено регламентом, боясь сенсоров стула, способных зафиксировать несанкционированную нервозность.
Накатил прилив злой иронии. Полностью вышколенный гражданин, оператор 409, с перспективами и будущим, внутри мертвей собственного стула. А испуганный, непредсказуемый беглец — живее всех обитателей зала, хотя для общества — нуль.
Промотал логи состояния сети. Аномалий не зафиксировано. Отступление дрона объяснено сбоем навигационного модуля, перенаправление приоритетов -"оптимизация маршрутизации в связи с перегрузкой сектора». Дыры залатались практически мгновенно, едва не обогнав при этом собственное возникновение. Безапелляционность системы не позволяла ей поверить в собственный сбой. Самые дерзкие вмешательства классифицировала незначительными ошибками, рядовыми сбоями, подлежащими автокоррекции, тут же ей и проводимой.
Выпрямился в кресле. Равнодушно светил монитор. Мысли метались в поисках логического выхода. Отсутствие РБЛ у беглеца - архитектурный парадокс. Каждый гражданин, каждый объект, каждый узел сети имел уникальный идентификатор и, самое главное, число РБЛ. Без рейтинга человек не валиден. И неподконтролен. Такого в современном мире не бывает — никто в городе не может дожить без кода до зрелых лет.
Пальцы легли на клавиатуру, на автомате выбивая команду поискового запроса раньше, чем успел сформулировать мысль до конца. Как узнать, кто это и откуда, если нет идентификатора для поиска? Виэн открыл утилиту глубокого поиска, задействовав теневой шлюз оператора сегмента. Код беглеца неизвестен, РБЛ тоже, но доступны временные и пространственные маркеры — сектор, момент инцидента. Хоть один из датчиков должен был его просканировать.
«INITIATE_SEARCH: ANOMALY_SECTOR_GRID_DELTA_8, TIME_STAMP_CURRENT, DRONE_UNIT_7B-23_INCIDENT: QUERY SUSPECT RATING/CODE».
Строки кода побежали по экрану. Приготовился к ожиданию типового потока данных, но краткий ответ выбросило через секунду:
«QUERY_RESULT: NO_MATCHES_FOUND. DATA_CORRUPTION_SUSPECTED„.
Ненадолго завис, изучая надпись. »NO_MATCHES_FOUND« в такой ситуации — невозможно. Абсолютно невозможно. При отсутствии действующего кода должны остаться архивные логи: запись о рождении, метка об обнулении. Людей без идентификатора не существует. Все, кто живёт в городах, прописаны в базе. Любой вдох синтетического воздуха генерирует лог потребления.
Повторил запрос, игнорируя сообщение о повреждении данных, и расширив диапазон поиска. Нужно найти любой след или запись, ведущие к объекту. Результат тот же. »NO_MATCHES_FOUND«. Компьютер даже не предложил новую попытку, прервав сессию.
Не похоже на ошибку идентификации. Ядро не допускает подобных погрешностей. Если человек обнулён, то Заговор отменяется, но не стирается. А этот объект, похоже, существует вообще без рейтинга и без кода, привязанного к рейтингу. Объект без источника инициализации. Нарушение фундаментальных аксиом существования в базе данных гораздо серьёзнее, чем обычная аномалия. Такая ошибка не может и не должна существовать. Он же ест, спит, дышит кислородом, наконец.
Для выросшего в мире, где «быть» означало «учитываться», ситуация отсутствия РБЛ выглядела встречей с привидением. Любая операция создаёт лог транзакции. А здесь — ничего. Адресное пространство, насквозь прозрачное для любого стороннего наблюдателя, содержит слепое пятно, в котором игнорируется весь контрольный механизм, ставя под сомнение всё всемогущество своих создателей.
Собственная аномалия, казавшаяся грандиозной загадкой, по сравнению с подобной выглядела простенькой статистической погрешностью. Да, число РБЛ не менялось, но всё же оставалось доступным для всех, кто им интересовался. Беглец же абсолютно непрозрачен. Полное отсутствие любых данных, любое упоминание либо стиралось из информационного поля, либо не проявлялось там вовсе. Поведение, выходящее за пределы любых отклонений.
Профессиональное любопытство переросло в одержимость. Кто этот беглец? Почему контроль вообще допустил существование подобного? Крайне интригующе. Беглец выглядел искажённым отражением, кривым зеркалом, увеличивающим уродство. И живым доказательством — система может ошибаться. Пока живым. И Виэн собирался сделать всё возможное для продления такого статуса.
Виэн давно чувствовал: мир медленно гниет. Корневые логи подтверждали: деградация началась с запуском «Глобал-Протокола 4.0», или, в народном названии, с запуска «Великого Очищения». Вместе с ним человечество вступило в новую эру, а РБЛ — в ранг базовой настройки для всего общества. Путь вёл в тупик, но несогласные мнения быстро исчезали вместе с носителями. Копаясь в данных, находил обрывки упоминаний об официальной причине исчезновения данных — обнулении всемирной памяти, — но ни следа объяснений случившемуся.
Возможно, случилась диверсия. Вышел из-под контроля центральный ИИ. Случайно или в результате спланированного теракта. Следов находилось очень мало, воссоздать полную картину не получалось даже приблизительно. Большая часть сведений давным-давно признана дестабилизирующими данными, тотально уничтожена и схемы безопасности блокировали любые попытки восстановления.
Три года назад, проводя дефрагментацию очередного из старых секторов, наткнулся на «Теневой Архив» — свалку данных, отбракованных цензорами. Там лежали файлы с пометкой «Деструктивный контент. Штраф при доступе: 50 баллов».
Среди битых секторов попадались файлы с расширениями, не понятными для современных ридеров: .mp3, .avi, .jpg. Научившись открывать через эмуляторы, прослушивал обрывки мелодий, вызывавшие необъяснимую тоску, просматривал изображения несимметричной природы, читал тексты о чувствах, не регламентированных правилами. Данные маркировали мусором, но в этом мусоре чувствовался смысл, недоступный выверенному по линейке миру.
Для обычного гражданина, трясущегося над каждой единицей рейтинга, запретный и опасный плод. Падение ниже трёх тысяч могла привести к потере права на горячую воду, не самый безопасный шаг в середине зимы. А у него всего запаса чуть больше сотни. Но всё же рискнул, скачал пакет лекций по архитектуре сетей, и снова проскользнул сквозь игольное ушко контроля. Нарушение зафиксировали, штраф назначили, но РБЛ даже не шелохнулся. Тут же повторил закачку. Нарушение снова зарегистрировалось. РБЛ не изменился.
С тех пор свалка обрела постоянного посетителя. Пока другие тратили баллы на развлекательные стримы, он учил технические спецификации ранних версий. Читал отчёты разработчиков. И постепенно разобрался в самом главном — что есть Великое Очищение. Это был не результат военной операции, а банальной ошибкой команды на форматирование дисков, вышедшей из-под контроля. Почему — оставалось тайной.
А ещё узнал, что Заговор задумывался медицинской картой, и превращение в ошейник произошло из-за плохой оптимизации кода управления массами. Судя по старым спецификациям, изначально планировался универсальным ID-ключом, выдаваемым при рождении. Для хранения всех личных данных: от генетического кода до истории болезней, от карьерного пути до социального взаимодействия. Но впоследствии функции расширились. Ключ стал определять не только саму личность, но и её ценность для общества. Так появился Рейтинг Благонадежности Личности (РБЛ), а за ним — вся структура компенсации потребления, заменившая собой экономику.
В текущей итерации код в очередной раз трансформировался и получил привязку к личному идентификатору каждого гражданина. Города увеличивались, и ресурсы — истощались. Архитекторы старого мира пришли к общему выводу: удержание масс в гарантированном подчинении возможно через повсеместное применение абсолютной прозрачности. Ключ разросся до всеобъемлющего цифрового профиля, позволяющего отслеживать поведение, и даже в определенной степени управлять им.
Тотальное логгирование каждой транзакции выхолостило волю населения. Угроза падения РБЛ, лишения талонов для доступа к жилью, а в самом худшем из случаев и отправки на переработку, делала страх фоновым процессом существования. Люди повсеместно становились инертными биоединицами. Приучались не реагировать на запреты и ограничения, верить в мудрость и проницательность системы. Не обращать внимание на уличную стрельбу. С годами все чувства успешно подавлялись страхом.
Регулярная проверка в будках не просто сканировала идентификаторы. Там проверялась актуальность данных, регистрировали физические проявления эмоций, отслеживалась громкость голоса при произнесении кода и эмоция испуга в звучании. Обновляли параметры, методы и планировали следующие проверки. Те, чей РБЛ падал, чувствовали эмоции — страх или тревогу перед надвигающейся угрозой и собственной уязвимостью. Несанкционированные всплески вызывали предсказуемые последствия, уровень РБЛ падал ещё сильнее, и несчастные опять попадали на калибровку, а в случае излишне сильного падения — на обнуление, утилизацию.
Никто не должен нарушить расчётную стабильность. За этим постоянно следили патрульные. Их оптика содержала мобильный валидатор кода, который определял статус человека, уровень РБЛ, и, если требовалось, активировал скрипт ликвидации.
Ещё запомнился аудиодневник одного из архитекторов «Великого Очищения». Голос на записи прерывался. Архитектор говорил не о величии, а о панике. О проблемах элиты, не видящей способа справиться с управлением миллиардами, о ресурсах на исходе, и о единственном решении — программной лоботомии.
«Мы не строим новый мир, — признавался голос из забытых времён. — Мы замораживаем старый, боимся его взрыва».
Там же лежал корневой файл манифеста. Исходный. Ещё назывался по-другому. В заголовке значилось «Кодекс Согласия». Code of Agreement.
Найденный файл перевернул картину мира. Миф об отлаженном механизме рассыпался: перед ним — клетка, наспех сколоченная вусмерть перепуганными охранниками. Хорошая идея превратилась в ошейник — надзиратели поленились разбираться в психологии.
Виэн пролистал историю версий, и отследил пошаговое вытравливание смысла из названий. Сначала в локальных модулях громоздкий «Кодекс Согласия» сократился до сухого Кода. Позже в технических логах самого Очищения название таблиц изменилось снова: отредактировали таблицы доступа, заменив Согласие на Сговор.
Языковые пакеты довершили мутацию. Десятилетиями синтезаторы голоса жевали слово, подстраиваясь под архаичный слух выживших, пока Сговор окончательно не превратился в Заговор. Мимикрия юридического термина в магическую формулу. Просьба подтвердить договор превратилась в подтверждение соблюдения древней сделки.
Виэн прекрасно разбирался в логике происходящего, сам являясь частью интегрированного узла. Хотя никогда и не попадал на калибровку и не получал красных уведомлений.
Он начал воспринимать мир плохо написанной программой, работающей только потому, что никто не смеет нажать кнопку «Отмена».
Рейтинг самого Виэна всегда оставался статичен. Возможно, исключён из контура обратной связи из-за бага архитектуры или из-за неизвестной директивы высшего уровня, но личностный код вполне доступен для анализа, не секретнее, чем у любого другого жителя.
Виэн не считал себя наивным идеалистом. Уже не раз тестировал границы дозволенного. Два года назад, зимой, когда алгоритм оптимизации не включил отопление в жилом секторе Гамма ради экономии энергии для празднования Дня Единства, провёл полевой тест.
Писать жалобы не имело смысла. В лучшем случае на них бы не ответили. Поэтому зашёл в маршрутизатор энергосети и изменил приоритеты: перенаправил избыточный ток от гигантских рекламных панелей на тепловые насосы сектора. Огромный слоган «СЛУЖИ И РАДУЙСЯ» потерял 0,05% уровня яркости — разница, не различимая для глаз наблюдателей.Контроллеры тоже проигнорировали погрешность. Зато температура в квартирах поднялась до жилой нормы.
Потом двое суток, не отрываясь, мониторил логи безопасности, ожидая блокировки или визита службы контроля, но громоздкому ядру не хватило внимания для контроля микроскопической утечки при исполнении обработки миллиардов транзакций. Оно оказалось слишком занято глобальным контролем, чтобы следить за всеми мелочами, и тогда Виэн вывел первую аксиому: над ним — не всевидящее око, а подслеповатый великан, обращающий внимание только на показанное напрямую. Если двигаться в слепых пятнах, правила можно обходить безнаказанно.
Код обслуживания города гораздо больше походит на старое лоскутное одеяло, изъеденное молью, чем на кристаллическую решётку под напряжением. Под интерфейсом пользовательских терминалов собраны коллекции заплаток и временных фиксов. Старые библиотеки конфликтовали с новыми скриптами контроля, создавая микроскопические зазоры. Щели, куда вполне мог проскользнуть очередной умник. Или некто отчаянный, не боящийся быть раздавленным шестерёнками.
И всё же упорной выдаче «NO_MATCHES_FOUND» для инцидента с беглецом рационального объяснения не находилось. Беглец получался абсолютно неприемлемой ошибкой. Находился вне адресного пространства. Записей нет, следов в логах тоже. Возник из неиндексированной зоны, если бы такая могла существовать. Глубоко неправильная ситуация вызывала настоящую паранойю.
Такие совпадения не бывают случайными. Вселенная прислала вызов. Критическая уязвимость в архитектуре контролируемого мира. Он, оператор, скрывавшийся в тени по причине своей неправильности, встретил человека, которого вообще не могло существовать. Опровергающего законы самим фактом своей жизни.
Надо узнать подробности. Инстинкт исследователя подавил страх. Закрыл консоль. Отправил отчёт о сбое в работе терминала. Медленно потянулся, и отключил монитор. Впервые за все годы работы 403ий оказался в офлайн в неурочный час.
Индикатор присутствия на столе мигнул желтым, фиксируя отсутствие активности. У него не больше минуты, прежде чем СВК заинтересуется, почему пользователь не выполняет функцию.
Виэн поднялся. Беглец — ключ к чему-то большему, чем его собственная аномалия. Загадка. Но теперь он мог проверить — поддаётся ли клетка.
Глава 5
Андрей прислушался, стараясь дышать бесшумно. Шорох раздался вновь — царапанье за грудой искорёженного металла стало чуть громче. Луч дёрнулся, выхватив неясную тень. Страх забился внутри, набрал взрывную мощь от замкнутого пространства. Отсюда некуда бежать.
— Эй! — крикнул он. Голос прозвучал хрипло и неуверенно.
В ответ вернулись только тающие отзвуки и далёкое падение капель. Капало очень громко, нервируя звоном ударов об лужу. Темнота вокруг луча жижей заливала взгляд. Вытяни руку — и пальцы увязнут, как в смоле.
Неподвижный воздух был настолько тяжёл, что его хотелось выплюнуть. Неприятный привкус мокрой извести оседал во рту. Потёр лицо, стаскивая липкую паутину. Отсутствие звуков пригибало к земле. Такая тишина наступала, когда в офисе отключали питание, но становился слышимым фоновый шум города, а через несколько секунд раздавался писк бесперебойников и привыкшее ухо начинало различать далёкий гул вентиляции. Местное же безмолвие мёртво и неизменно. Шагнул, и напугался шорохом от собственного шага.
Осторожно ступил вперёд, тут же споткнулся о железку, запрятанную в мусоре. Фонарь дёрнулся, конус света выписал замысловатую дугу, выхватив свисающие сверху куски арматуры. Подумать только — совсем недавно самой большой для него угрозой был скачок напряжения в серверной. Сейчас же смерть могла таиться в любом углу.
Выпрямился. Повел лучом по сторонам. Бетон крошится, врастопырку торчит ржавая арматура. Сквозь провалы в обшивке просвечивают толстые жгуты кабелей. Блестят чудом сохранившиеся стекляшки диодов.
Путь перегородила груда наваленной арматуры и кусков камня. Когда миновал завал, из-под прислонённой плиты выметнулась тень. Не успел сообразить, как правильно среагировать. Испуганно шарахнулся в сторону и инстинктивно выставил фонарь перед собой, отталкивая чужака.
Красивой драки не вышло. Ноги скользнули, нелепый взмах и фонарь полетел наземь. Нападавший не ожидал такой неуклюжести, промахнулся, налетел всем телом. Удар выбил дыхание из лёгких. Получил удар локтем в челюсть, вспыхнули искры, но страх придал сил.
С глухим стуком тела рухнули в пыль, подняв облако затхлого цемента. Сцепились, катаясь по бетонной крошке, царапающей кожу сквозь одежду.
Андрею повезло — оказался сверху, потому что был тяжелее. Противник барахтался под ним, пытаясь ударить чем-то острым, но он навалился всем весом, прижимая чужие запястья к полу.
Суетливая возня не походила не эффектную драку из боевика. Оба задыхались, взгляды помутнели. Панический страх придавал сил. Давил массой, неумело и отчаянно, чувствуя болезненные удары острыми коленями по почкам. Если соперник окажется чуть сильнее или найдёт в кармане нож…
Фонарь откатился в сторону, выхватывая лицо врага.
Женское. Со спутавшимися волосами, в оборванных лохмотьях. Животный ужас на чумазом лице. Женщина дёргала головой, пытаясь укусить. Зубы клацнули в сантиметре от запястья. Глухой, звериный щелчок подействовал отрезвляюще. Вдруг увидел себя со стороны: менеджер среднего звена, ещё утром решавший, одевать ли ему галстук, катается в пыли, и душит женщину. Сидит верхом на живом человеке, вдавливая хрупкие запястья в пол. Эта возня, ощущение чужого загнанного дыхания вызвала отвращение.
Он отодвинулся, приподнялся на руках.
— Я не причиню тебе вреда, — голос дал петуха, слова вылетали с трудом. — Кто ты?
Женщина прекратила сопротивляться. Буравила снизу остановившимся взглядом, не веря в ослабшую хватку. Нахмурила брови, но не пошевелилась.
— Ты… не из Крыс, — медленно проговорила хриплым, ещё прерывающимся голосом.
Осторожно слез с неё, отполз назад, поднимая ладони в примиряющем жесте.
— Я не видел никаких крыс. Я потерялся. Я вообще не знаю, где я.
Хотел добавить: »Я сплю. Такого не может быть«, но слова застряли в горле. Появление женщины в лохмотьях вынудило сомневаться в собственной нормальности. Ведь происходящее — типичный бред сумасшедшего, пересмотревшего фантастических боевиков. Может, ударило током от той светящейся штуки? Или поскользнулся, ударился головой и сейчас лежит в коме, а вокруг пищат медицинские приборы и на соседнем стуле плачет мама?
Медленно села, подбирая ноги, готовая в любой момент рвануть прочь. Села, чуть подавшись вперёд. Взгляд неподвижно сфокусирован, а пальцы уцепили предмет за поясом до побелевших костяшек. Потянула носом и брезгливо отшатнулась в сторону.
— Ты пахнешь неживым, — почти прошипела, голос держала негромким. — Деревом.
Хвойный дезодорант — так для него всего пахла чистота. Здесь, среди сырости и гнилостных испарений, парфюм звучал чужеродно, неоновой вывеской на колхозном поле.
— Ты воняешь лабораторией, — злобно оскалилась она. — Крысы почуют тебя с другого конца города. Тебе повезло, что я наткнулась на тебя первой.
Оценила одежду, зацепила взглядом за часы.
Разом изменила выражение лица. Напряжённость ушла, с лица исчез оскал загнанной крысы. Перед ним проявилась не дикарка, а вполне разумная женщина в сильно потрёпанной одежде.
— Гладкий. Сытый. С целыми зубами, — оценила она уже совсем другим тоном. — Ты не из низов. Высший решил спуститься в стоки ради экстрима? — в голосе зазвучала смесь сарказма и страха. — Или зачем? Решил в прятки поиграть?
— В меня стреляли.
Недоверчиво хмыкнула, чуть расслабилась.
— Значит, всё-таки в чём-то провинился.
Произнесено сухо. Констатация факта. Замялась, нервно контролируя пространство за спиной. Не доверяет. Оценивает, не лучше ли сбежать прямо сейчас, пока враг не очухался.
Но не убежала. Внимательно изучала странного визитёра. Холёные волосы, часы, гладкая кожа без ожогов. Любопытно, зачем оказался в нижней зоне. У него наверняка должны остаться ключи от шлюзов верхнего мира. Билет в верхнюю зону, где воздух не пахнет плесенью. Если парень, несмотря на нелепую одежду, обладает статусом, способным заткнуть пасть патрульным, вцепится в найдёныша мёртвой хваткой.
— Ты не голодал, — констатировала с тенью зависти и злости. — У тебя волосы блестят. Руки мягкие, без мозолей и шрамов от техногенки. Но одежда на тебе гражданская, причем странная. Ткань… — пощупала рукав рубашки, — натуральная? Такое носят только наверху.
Отпустила одежду и снова оглянулась.
— Меня зовут Лина. Я решила, ты из них.
— Из кого?
Новоявленная мотнула головой в сторону, откуда он появился.
— Крысы. Те, кого отключили от кормушки. Охотятся на всё, что движется. Вешают лески в таких местах, — тыкнула большим пальцем на кучу мусора. — Или разбрасывают шумелки — жестянки с гайками. Ты задеваешь, и стая знает, где ты. Сами ходят на четвереньках, ощупывая путь, ловушки рассчитаны на тех, кто ходит прямо. Оружие не тратят, забивают добычу дубинками. Не убивают сразу. Любят погоняться. Говорят, от страха мясо становится слаще.
Ткнула пальцем. В пятне света от валяющегося фонаря, зиял грубый рисунок бурого цвета — перечеркнутый круг.
— Их знак. Зона сбора. Если встретишь — они рядом.
Женщина говорила буднично, с интонацией объявления прогноза погоды, и от такой интонации пробирал ещё больший ужас.
— Я бежал, — повторил он, пытаясь переварить информацию о каннибалах. — В меня стреляли.
Лина не отвечала. В ней явно боролись вбитая годами паранойя и острая, почти болезненная потребность выговориться перед кем-то со стороны.
— Бывает, — произнесла без эмоций. — Моего мужа тоже…
Так говорят о давно отболевшем факте биографии.
— Инженер. Невысокий РБЛ, на четвёртую тысячу даже не претендовал. Но кому-то из чиновников понравилась я. Прислали уведомление по форме 602 — семейная ячейка бесполезна. Мужа сочли неоптимальным для меня партнером. Прислали диаграмму, график совместимости по геному. Доказали с аргументами: мы — ошибка, снижающая груповой ВВП сектора на ноль целых три десятых процента. Не трагедия, не драма. Плохая статистика.
Тонкие губы искривила горькая усмешка.
— К отказу приложили список рекомендованных замен. Пять кандидатов с подходящим генетическим кодом. С фотографиями. Прямо каталог бытовой техники. Мне предлагалось выбрать нового мужа по тарифу. Куратор заявил: твой геном — ценный ресурс, нерационально тратить на техника. Муж попытался подать апелляцию. На другой день его РБЛ аннулировали. Расстреляли прямо через окно кухни. Я сбежала.
Сумбур в голове складывался в жуткую картину. Значит, не восстание роботов. И не свихнувшийся искусственный интеллект. Всё хуже. Потому что проще.
— Ты хочешь сказать, люди? — переспросил он. — Чиновники?
— Они, — кивнула та. — Глаз в небе -дубина. А машет ей тот, у кого доступ. Называют свои действия оптимизацией, но на деле пользуются властью для приказов. Глаз не выбирает цель. Выполняет инструкцию. Куда скажут — туда и палит.
Какой-то тумблер перещёлкнул внутри. Если и впрямь коматозный сон, кто толкает его подчиняться сюжету? Всегда же мечтал стать героем. Вот и шанс.
Страх отступил, он с удивлением узнал профессиональную злость. Он всю жизнь работал с системами. Если ей управляют люди — в ней есть дыры. А значит, админские доступы, бэкдоры, человеческий фактор. Софт всегда кривой, особенно в неопытных руках.
— Рядом можно найти оборудование? — спросил он. — Серверные? Узлы связи?
Резкая перемена в тоне её удивила. Помолчав, ответила:
— В глубине знаю старые залы. Но там всё мёртвое. Металлолом.
— Веди, — поднял с пола фонарь. Повезло, не разбился. — Давай посмотрим на твой металлолом.
Лина жадно уставилась на луч. Хороший свет — большая ценность. Андрей помедлил, с сожалением ощутил надёжный вес металла, и протянул ей.
— Плата за информацию? — прищурила веки, взвесила тяжёлый корпус, поиграла лучом, пощёлкала кнопкой. — Внизу свет стоит дороже жизни. Если я возьму, Книжники решат, я ограбила патрульный склад.
— Считай инвестицией, — буркнул он. — Мне нужны твои глаза и знание местности. Без твоей навигации и самый лучший прожектор осветит мне разве что могилу.
Маленькая ладонь поудобнее перехватила подарок. Хорошая сделка.
С первых шагов стало понятно, что ориентировалась аборигенка прекрасно. Поманив за собой, нырнула в узкую штольню, провела коротким проходом и вывела в длинный туннель. Переход на Театральную?
Под ногами захрустел пластик — наклонился, поднял бутылку с этикеткой «2033». Мусор пережил столетие. Они перешагивали обломки турникетов, ржавые каркасы рекламных щитов. Прогулка по кладбищу.
Старый указатель бросился в глаза. Буквы затёрлись, но шрифт московского метрополитена узнавался и за слоем вековой пыли. «Переход на кольцевую линию». Сколько раз он пробегал мимо таких табличек и не замечал их, уткнув глаза в телефон? Поверхность надписи покрыта стекловидным налётом — следы давних пожаров? Во многих местах настенная плитка попадала, обнажив каркасные проплешины.
Проводница остановилась у широкого проёма.
— Здесь.
Луч выхватил из темноты ряд шкафов. Шагнул к ближайшей стойке. Нащупал знакомую шагрень на металле, и бред окружающего отступил туманом под мощным кулером. Паника, бившая по нервам последний час, свернулась в тугой узел и отошла на второй план.
Сознание, не способное переварить вековое одиночество, сузилось до размеров стойки. Рядовой стоечный коммутатор с индикацией и стандартными модулями успокоил сильнее любых уговоров. За сто лет могли появиться стреляющие дроны и подземные женщины, но роутеры должны поменять хотя бы форм-фактор.
Всё-таки он в фантазии. Видимо, треснуло током от той прозрачной штуки в переулке. Но сколь удивительно реальны ощущения!
Успокоение пробудило профессиональный инстинкт, в памяти машинально всплыла последовательность действий по диагностике. Тремор не исчез, но уплыл куда-то вглубь, становясь управляемым.
Шкафы смонтировали на совесть — стойки намертво привинчены к полу, кабели уложены в жёсткие короба. Смахнул пыль с пучка проводов витой пары. Изоляция затвердела за годы, но свою цель по-прежнему выполняла. Строители создавали не склад, а подлинный резерв — бункер для данных, рассчитанный на переживание ядерной зимы. Ирония судьбы: зима не наступила, а данные никому не нужны.
Нащупал необычный запорный механизм на дверце шкафа — герметичный, с прорезиненным контуром. С трудом повернув тугую ручку, потянул на себя дверь. Зашипел инертный газ, из шкафа пахнуло химией. Аргон. Или азот.
— Классная консервация, — восхитился он. — Стойки стояли под давлением кучу лет, а внутри чистота.
Оборудование в прекрасной сохранности. Не дешёвый пластик — матовые корпуса из анодированного алюминия, военная маркировка, жёсткие разъемы с золотым напылением. Не обычная серверная. Узел связи стратегического назначения, рассчитанный пережить ядерный удар. Индикаторы на блоках питания мёртвые, но конденсаторы внутри, в среде инертного газа, могли сохранить ёмкость.
Железо на месте. Диски, платы, коммутаторы. Всё обесточено, но не разграблено.
Терминал по центру выглядел вполне работоспособным. Пошарил ладонью в поисках кнопки включения или сервисного разъема — ничего похожего не обнаружилось ни с одной стороны. Нащупал сенсорную область под монитором — панель пискнула, зажгла подсветку. На экране выплыла надпись незнакомым шрифтом: «КРИТИЧЕСКАЯ ОШИБКА ПИТАНИЯ. ТРЕБУЕТСЯ АВТОРИЗАЦИЯ ГЛОБАЛ-ПРОТОКОЛА „.
Попробовал провести ладонью по датчику — стандартный обход защиты. Система дважды пискнула, но не включилась. Поискал консольный порт — безуспешно, корпус построили монолитным, без единой щели.
Чересчур тихо. Ни жужжания кулеров, ни мигания индикаторов. Мёртвая зона.
— Нужно питание, — пробормотал он. — Посвети по сторонам.
Луч света обежал помещение. Розетки проверять не пытался — в таком месте проводка давно сгнила. Нужно найти источник магистрали и сервисный выход.
Прислушался. Издалека пробивался низкий резонанс. Еле воспринимаемый. Палец, приложенный к стойке, ощущал мелкий зуд.
Отправился в дальний угол помещения. За ржавой решёткой стоял гудящий коричневый ящик размером с бытовой холодильник — трансформаторный блок. Из пролома в потолке спускался толстый магистральный кабель. Транзитная линия питала город наверху, но часть энергии оседала на понижающем узле.
На лицевой панели ящика обнаружился сервисный щиток.
— Технический ввод, — пробормотал он, счищая слой пыли с пластиковой заслонки.
Под пылью обнаружилось гнездо. Старое, универсальное, с маркировкой. 220V / 50Hz Service Output. Чудеса стандартизации: спустя век вольты — по-прежнему вольты. Разъем кондовый, промышленный, расстояние между контактами вроде походит на обычное.
Андрей полез в карман джинсов. Смартфон держал заряд от силы полдня, зарядное устройство попадало в карман при выходе из дома в обязательном порядке. Провод был туго намотан на корпус адаптера. Сейчас дурацкая привычка обернулась единственным шансом. Размотал кабель и вытащил гаджет.
Глянцевый экран, прохладный корпус.
На фоне грубых стоечных поверхностей девайс выглядел почти игрушечным — настолько аккуратно он был сделан. На стекле ни пылинки, ни микротрещины — вещь не только функциональна, но и красива. В слепящем свете фонаря он сиял волшебным артефактом.
Андрей усилием воли укротил чечётку пальцев. Если в линии магистраль, а не 220 — блок питания взорвётся, и осколки пластика рассекут ему лицо не хуже пуль.
Зажмурился и с силой воткнул вилку в тугое, скрипящее гнездо.
Раздался треск, запахло палёным, над гнездом столбом поднялась пыль. Отдернул ладонь, ожидая взрыва.
Взрыва не произошло. Блок питания тихонько запищал — дроссели внутри запели под нагрузкой.
Экран телефона мигнул и высветил батарею. Логотип загрузки, маленький светящийся значок, высветил надпись — 1% заряда. Оба завороженно гипнотизировали взглядом тоненькую полоску.
Фото родителей, переписка с друзьями, музыка, заметки. Вся жизнь, сжатая до микрочипа.
Устройство пиликнуло незнакомым звуком. Всплыл значок »EC«. Переход в режим „Emergency Call“. Нет связи с сетью, вполне ожидаемо.
Зато стало понятно направление действий. Если мир управляется кодом, у него существует админка. И если те, кто наверху, используют один и тот же софт с их предками, то они очень сильно себя подставили. Вспыхнул азарт власти над железом, считающим себя умнее человека.
Впервые за бесконечный день страх дал сбой, уступая место злому азарту. Пусть фантазия, но в ней не обычный гость из прошлого, а профессиональный системный администратор. А перед ним — железо. И к любому железу можно найти доступ. Особенно к давно не патченному. Очень давно не патченному.
Глава 6
Едкое свечение панелей выедало глаза, монитор отражал искажённую маску, непрестанный стук клавиатуры мог привлечь внимание контроля, индикаторы давно горели оранжевым, требуя сделать перерыв, но Виэн не замечал усталости.
Оператор глубоко погрузился в недра городской сети в поисках ответов. Прерваться сейчас его не заставило бы и появление роты терминаторов. Прошло несколько часов с момента инцидента, но необъяснимое отсутствие беглеца в базах по-прежнему не находило объяснения. «NO_MATCHES_FOUND» постоянно всплывал перед глазами.
Поёрзал в кресле. Эргономический ложемент, призванный поддерживать осанку, терзал как заправское орудие для пытки. Сенсоры в подголовнике наверняка фиксировали микродвижения, интерпретируя падение концентрации, но плевать на производительность. В зале, полным серых лиц, он — единственный бодрствующий среди тысяч лунатиков.
Неподвижный курсор будоражил мерцанием. Оставив поверхностные поисковые запросы, вызвал логи мониторинга. Полез в отчёты по трафику, в логи датчиков периметра, в регистрацию аномальных скачков энергопотребления — в любой набор записей, могущий иметь отношение к беглецу. Подсчёт песчинок в пустыне делается не через логику, а по наитию и с нарастающей одержимостью.
На экран вываливался бесконечный поток данных — транзакции покупок, логи бессмысленных разговоров, анализируемые на предмет крамолы, количество шагов, регистрируемых плиткой тротуаров. Цифровая канализация города, куда сливали все отходы цифровой жизнедеятельности общества. Поток без фильтров, перерисовывающих данные в красивые трехмерные графики, сводило мельтешением строк с ума, но оператор намеренно отключил визуализацию. Нужны были исходные, сырые данные, не вычищенные автоматической корректировкой. Однотипные записи плыли перед глазами, но продолжал изучать строку за строкой, отыскивая невозможный паттерн.
Перед его взглядом неслись текстовые каскады. Для любого из класса А — бессмысленная мешанина букв, но для него — типовая структура данных. За ней звучала музыка города: нагрузка энергосетей, мельтешение транспортных потоков, монотонное дыхание серверов жизнеобеспечения. Где-то в этом техногенном ритме звучит фальшивая нота. Тихая, едва различимая, и напрочь разрушающая стройность тотального контроля.
Искать то, чего нет — странное занятие. Когда мир построен на принципе тотальной регистрации, то само существование объекта подразумевает наличие идентификатора. Только у галлюцинаций не бывает ID.
И очень хорошо помнилось выражение лица на экране. Живой страх, определённый датчиками. Ярость. Галлюцинации не боятся и не испытывают ярости. Ошибается не память, а миллиарды строк кода, управляющих городом. Еретическая мысль заставляла руки летать над клавишами, обгоняя контроль безопасности.
Прочёсывал регистрационные метки до и после инцидента, сравнивал по байтам каждый отрывок лога со станции с основным. И возбудившееся чутьё не подвело — он не пропустил странность, когда на неё наткнулся. Не на отсутствие данных, на их игнорирование.
Сразу в нескольких отчётах о сканировании сектора «Дельта-8», проведенных после его вмешательства, обнаружились слепые зоны. Физический объект регистрировался, но центральный процессор тут же отбрасывал записи, не передавая на анализ и не присваивая им ни постоянного, ни временного идентификатора. Контроль не просто не замечал беглеца, но активно отказывался замечать. Исключал нерелевантным запросом. Так делает бюрократическая махина, выбрасывая документы в шредер, если те не вписываются в утвержденный шаблон.
Вывел на экран лог одной из единиц. 7B-23. Строка 4048: «Обнаружен биологический объект. Тепловая сигнатура: норма. Сердечный темп: 168. Уровень угрозы: расчёт…». А дальше — обрыв строки, причём без знака EOF. Строка 4049 пуста. Null. Void. Контроль вычислял уровень угрозы, но в момент обращения к базе данных за идентификатором процесс прерывался. Ни отказа в доступе, ни ошибки. Процесс исчезал, и база тут же забывала о его существовании. Цифровая амнезия супермозга без малейшей причины. Глубоко встроенный защитный механизм срабатывал быстрее логики. «Не вижу зла, не слышу зла» — альтернативный принцип работы для самой продвинутой системы наблюдения в истории.
Он оторопело почесал в затылке. Кажется, ему повезло найти не обычную ошибку. Ситуации, когда всеобъемлющий механизм контроля сбоит при исполнении базовых процедур, отслеживают и исправляют в центральном аппарате, на самом верху.
Рассуждаем логически. Для получения идентификатора надо обозначить интересующий объект. 7В-23 определил биологический объект набором физических параметров. Если скопировать параметры и задать запрос напрямую в центральный реестр — базу, где хранятся все коды, должен выдаться если не сам идентификатор, то хотя бы данные по относящейся категории. Проблема в том, что прямой запрос в реестр — грубое нарушение прав доступа.
Любопытство пересилило страх перед наказанием. Кроме того, в центральный реестр всё равно не зайти через парадный вход. Прав доступа уровня «Альфа» у обычного сотрудника нет, поэтому нужно использовать главную уязвимость любой безопасности — человеческий фактор.
Администраторы, посещающие контроль сектора, никогда не набирали сложные 64-значные ключи шифрования вручную. Они всегда копировали их из защищенного буфера обмена диагностических планшетов при подключении к терминалу. И наверняка никогда не очищали буфер после выхода.
Вызвал историю буфера терминала. Там висел мусор — обрывки логов, идентификаторы. Но в самом низу, датированная позавчерашним числом, именно тогда, когда контроллёр одарил Улей визитом, висела длинная строка бессмысленных символов. Выделил её, скопировал.
— Надеюсь, ты — ленивый идиот, — проговорил он про себя, и нажал Ctrl+V в поле авторизации.
Звёздочки заполнили поле. Он опасливо оглянулся.
Сосед справа, номер 404, сидел с застывшим лицом. Беззвучно шевелил губами. Если сейчас ошибиться, заорут сирены, замигает сигнализация, и завтра 404ый усядется с такой же кислой миной, а на месте Виэна возникнет новый 403-ий. А нынешнего 403его переработают в органическое удобрение для гидропонных садов сектора Агро. Палец завис над клавишей ввода. Один удар сердца. Второй.
«Ну же, давай», — скомандовал сам себе и вдавил клавишу.
Окно авторизации мелькнуло и пропало.
Открылся интерфейс. Оператор торопливо вбил запрос:
«REQUEST_ACCESS: GLOBAL_COVENANT_REGISTRY_CORE».
Скопировал все вычисленные из 7В-23 параметры. Добавил фотографию после первого выстрела с перекошенным лицом. Помедлив, вписал идентификатор дрона, первым идентифицировавшим беглеца. Теперь сводка данных должна распознать личность, будь та хоть трижды засекреченной.
Строка зависла на миг, потом полыхнула жёлтой ошибкой.
«ERROR: 7 °C-ALPHA-9 > UNEXPECTED_PROTOCOL_BREAKDOWN, DATA_INTEGRITY_COMPROMISED »
Вчитался в текст. Никогда не встречал такой ошибки. Не стандартный отказ в доступе из-за недостатка прав — нарушение целостности данных. Отправленный запрос вызвал противоречие в архитектуре.
Терминал издал надсадный вой, компьютер застонал. Вентиляторы охлаждения процессора взвыли, разогнались до максимума в попытке остудить чипы, перегруженные неразрешимой логической задачей. На соседних мониторах пошла рябь помех. Инстинктивно вжался в кресло: сейчас сработает сирена наблюдателей, и в зал ворвутся ликвидаторы с оружием, откроют огонь на поражение. Но гул так же внезапно стих, как и появился.
Экран моргнул и стабилизировался. Интерфейс перезагрузился. Гладкая оболочка ОС «Гармония» исчезла, открылся чёрный экран командной строки ядра. Походило на содранные обои, обнажившие грубую кирпичную кладку и гнилую проводку. Виэн находился там, где не бывало обычных пользователей — в подсознании системы. Ни подсказок, ни защиты от дурака. Неверное движение могло обесточить целый жилой район или открыть шлюзы канализации.
Забыв об осторожности, запустил глубокую диагностику ошибки, обрушившей интерфейс. Сзади послышался сухой шелест — патрульный бот-инспектор медленно поплыл вдоль рядов. Рефлекторно наклонился вперёд, перекрывая монитор локтем и разворачивая плечи, чтобы скрыть активное окно консоли. Подпёр ладонью подбородок, имитируя процесс глубокого раздумья, пока огонёк сканера не прополз мимо.
Ответ появился через две секунды и озадачил ещё сильней. Проблема не в запросе. Сбой ссылался на защищенный от записи лог-файл в корне ядре. Смог вытянуть метаданные. ERR_UNRESOLVED_001. Файл, не стёртый даже при Великом Очищении, содержал всего одну строку: TIMESTAMP: 1471250477Z. ID: 0×7B2016A15. EVENT: ANOMALY_ANCHOR_SET. STATUS: PENDING.
Очень странная временная метка. Все виденные им раньше начинались с цифры 4. Единицу ставили лет сто назад, когда еще и о Великом очищении-то не слышали. Пожал плечами, и очистил экран. Устаревший мусор, забытый маркер, конфликт параметров. Отбросил, но цифра зацепилась в памяти.
Сейчас утверждают, что реальная история началась со Дня Основания. До него шла Эпоха Хаоса — бесконечные годы вирусных эпидемий и неуправляемых потоков неконтролируемой информации. События вековой давности относили к примерам мифологии, не обсуждаемой в приличном обществе. Найти активный файл с такой меткой равносильно нахождению живого динозавра. Прямое противоречие догме о полном создании мира после очистки от скверны прошлого. Если файл помечен Pending (Ожидание) — прошлое не умерло. Оно ждёт.
Полез глубже. По наитию вытащил общую статистику работоспособности узлов за последние десятилетия. На всех секторах сети примерно одинаковые показатели: плановые перезагрузки, пиковые нагрузки, логи о мелких сбоях. И среди них единственная аномалия — статистика узла Ядро-01. Статистический призрак. Ни одной перезагрузки за всё время работы. Ни единого зарегистрированного сбоя, и ни одного наряда на обслуживание. Ни одной ошибки, вообще ни единого байта в логах. Ни обслуживания дисков, ни запросов на обновление. Это же нереально. Любая техника, любая программа за такой срок должна потребовать обслуживания. Потратил минут десять, отматывая данные на временной шкале на десятки лет назад, но узел неизменно оставался предельно чистой линией на графике. Не работал, а существовал вне законов энтропии.
Попытался представить себе реальную конструкцию узла. Не потребляет энергию, не отдает тепло. Что за чудо-контур? Выработка 100%, в нарушение законов физики. Либо метрики лгали, либо устройство работает на давно утраченных человечеством принципах. Город латали каждый день, а этот модуль оставался неизменно работающим со стопроцентной гарантией. Спящий бог, чьи сны управляют реальностью, пока мир вокруг гниёт и рассыпается.
Подумав, плюнул на бесплодное занятие — должно быть, логи с такого важного объекта скрыты для уровня доступа Альфа. Вернулся к анализу ошибки по данным РБЛ беглеца.
Ошибка и не в доступе. До доступа запрос не доходил, не успевал обработаться, выдавая критическую ошибку, призванную предотвратить дальнейшие действия. Выглядело ошибкой вроде деления на ноль — фундаментально неразрешимая задача, разрушающая программу.
Пока пытался понять бессмыслицу, на общем вспомогательном мониторе вспыхнула новая точка. Очередная аномалия, график состояния периферийных сетей. Источник: Сектор Дельта-8, Подземные Коммуникации.
Сердце пропустило удар. Подземные Коммуникации. Катакомбы, куда направился беглец.
Активировал отчёт по мониторингу объекта, и на экране выплыли данные:
«NEW_DEVICE_DETECTED: UNKNOWN_TYPE. CONNECTION_STATUS: ATTEMPTING_HANDSHAKE. IDENTIFICATION_PARAMS».
Универсальные спектральные анализаторы, контролирующие целостность периметра, засекли нелегальную радиоактивность.
Современные каналы связи похожи на лазер — сфокусированные, шифрованные. Этот же сигнал — всенаправленный радиовопль. Устройство сканировало эфир на необычных частотах, в попытке найти базовую станцию.
Ему опять повезло. Недавно разгребал логи Дельты и изучил спецификации частотного плана. Тогда выглядело бесполезным мусором, но сейчас цифры сами всплыли в памяти. Выдвинул ползунок на 1800 МГц.
Ввёл команду в консоль, активируя режим »Legacy compatibility« — режим обратной совместимости, используемый для диагностики устаревших передатчиков в канализации. Почти наугад выбрал GSM/LTE из бесчисленного списка. Сеть на секунду поперхнулась, но послушно перешла на заданный режим.
HANDSHAKE VALID: LEGACY_PROTOCOL_STACK. CREATION_DATE: 2016_SEPT_12
Доступная сеть обнаружена устройством.
— 2016 год, — потрясённо шепнул он.
Дата подтверждала подозрения, невозможные даже гипотетически. Человек не выпал из базы данных. Его вообще в ней никогда не существовало.
Служба безопасности уже отреагировала на радиозагрязнение. Патруль получил вектор атаки на источник помех. Через минуту устройство запеленгуют с точностью до метра, и туда отправят Хищника.
Нужно заткнуть фонтан радиоволны. Но каким образом? На отсутствующее в реестре устройство позвонить не получится. Нужно обмануть его и заставить затихнуть.
Вывел на экран схему коммуникаций сектора «Дельта-8». В том коридоре находился сервисный узел связи. Ввёл команду перехвата управления.
INITIATE_SDR_MODE: NODE_D8_SUB. FREQUENCY: 1800_MHZ. EMULATE: BASE_STATION_LEGACY.
Рискованный трюк — заставлять передатчик на квантовом шифровании деградировать на уровень примитивной радиовышки прошлого века. Программно-определяемая подсистема узла запустила в эфир трансляцию фальшивого идентификатора сети.
На мониторе мигнула надпись: «HANDSHAKE_COMPLETED » Старинный телефон поверил в фальшивую вышку, и подключился, прекратив паническое сканирование эфира. Канал установлен.
Непослушными пальцами набил сообщение. Не в мессенджер — на древнем устройстве наверняка нет нужной версии, а через служебный канал экстренного оповещения — Flash SMS (Class 0). Такое сообщение должно принудительно всплыть прямо на экране устройства поверх всех окон.
SEND_BROADCAST_ALERT -> ID_IMSI_UNKNOWN
TEXT: " НЕ_ВЫДАВАЙ_СЕБЯ! _ВЫКЛЮЧИ_УСТРОЙСТВО!»
Сообщение ушло. Тут же оборвал эмуляцию и лихорадочно стёр логи переконфигурации узла. Точка на мониторе исчезла — устройство отключено. Аномалия исчезла. К сетевому адресу устройства прицеплен скрытый маркер. Если устройство снова появится в сети, они обменяются координатами.
Трясло от всплеска адреналина. Подставить под удар статус ради тени на экране — на такое даже сумасшедший не идёт. Восхищала сама мысль о том, что где-то там внизу контроль буксует и не может переварить одного-единственного беглеца. Очень хотелось, чтобы эта ошибка разрослась до галактических масштабов.
Умный стул вздрогнул, индикаторы сменили цвет подсветки на тревожно жёлтый. По краю экрана побежало уведомление: «Внимание, Оператор 403. Зафиксирован критический уровень стресса. Сердечный темп 143. Рекомендуется немедленная медикаментозная коррекция. Штраф: 15 баллов РБЛ». Смахнул уведомление. Сейчас ему было наплевать на баллы и на коррекцию. Злая бодрость взбудоражила мысли.
Найдена не вульгарная ошибка, а настоящая и глубокая трещина в матрице мира. Кто бы ни привёл сюда субъекта, не подчинённого правилам, такой поступок поставил под угрозу ложь, держащую всё общество мёртвой хваткой. И собственная аномалия представала здесь не случайностью, а частью большой игры.
Завис перед пустым экраном, прокручивал только что случившиеся события в голове. Слышался треск рассыпающейся по швам реальности. Всё, чему учили о незыблемости тотального контроля, разлетелось вдребезги за час. Спасение подлежащего утилизации — акт государственной измены. И самое страшное — не чувствовал раскаяния. Наоборот, слегка гордился знанием правды, но не звучавшей из громкоговорителей на каждом углу, а настоящей. Даже иногда представлял себя единственным членом тайного братства тех, кто ищет истину.
Он в задумчивости стиснул подбородок пальцами. Здесь всё же не ошибка идентификации. Этот человек возник из ниоткуда, верно. Как фантом, который не должен существовать. Но всё же — найденный и реальный.
Иногда Виэн намеренно задерживался под датчиками, нарываясь на штраф, рассчитывая увидеть хоть единицу убытка. Безуспешно. Рейтинг застыл, превратив обладателя в статистический призрак, и никто не видел его провинностей. Невозможность разделить с кем-то знание о своей аномалии нервировало до трясучки. И сейчас, глядя на беглеца на экране, прекрасно осознавал свою главную мотивацию — единство. Родство. Контроль ослеп на кого-то ещё, то есть он — не единственный. Не единственный сбой в системе тотальной паутины лжи.
Грядущее пугало. Манило призрачной надеждой на успех. Пробуждало волю, десятилетиями вытравливаемую из каждого. И, самое главное, вселяло уверенность — мир вокруг вовсе не такой прочный, насколько хочет казаться.
Часть 2. Под землей. Глава 7
Андрей уставился на экран телефона. Поверх интерфейса выплыло необычно выглядящее системное окно. Текст вздрагивал на экране, игнорируя настройки яркости: «_НЕ_ВЫДАВАЙ_СЕБЯ! _ВЫКЛЮЧИ_УСТРОЙСТВО!».
Модем принял сообщение в обход всех протоколов. Через широковещательный пакет оповещения в режиме «Emergency calls». Неизвестный использовал уязвимость нулевого дня. Смартфон посчитал частотный диапазон доверенным каналом гражданской обороны. Сообщение прожгло экран, игнорируя настройки и отсутствие регистрации в местной сети. Но здесь не может быть совместимости с андроидом двадцать первого века. Кроме того, отправитель не прислал сообщение, а проложил мост над вековой дистанцией технологий, грубо взломал защиту устройства через аппаратный бэкдор. Тот, кто управлял каналом, обладал доступом уровня владельца устройства.
На значке доступа загорелся красный крестик — устройство принудительно отключили от сети. Кто-то там, наверху, в безумном мире, нашёл его, и, вместо предательства — предупредил. Он судорожно сжал корпус устройства. Единственный спасательный круг в штормящем море.
В подземелье свет дисплея светил крохотным прожектором. Ощущение беззащитности накрыло с головой. Маленькое пятно света — удобная мишень. Любой охотник может увидеть издалека и навести прицел. Но опасение сейчас не имело большого значения.
Страх отступил, вытесненный профессиональным изумлением. Первый сигнал установления связи. Где-то в недрах враждебной цифровой тюрьмы сидит оператор, способный смотреть сквозь стены. И он протянул руку. В чужой реальности, где любое внимание сулило угрозу, изгнанник царства дронов больше не одинок. У него появился союзник, пусть пока неведомый. Мимолётное ощущение поддержки прибавило сил.
— Ну, как там? — еле слышно выдохнула Лина, уставившись через его плечо на экран.
Смартфон завораживал дикарку, и та не скрывала восторга. Крохотный дисплей указывал на высокий статус владельца. Атрибут тех, кто стоит на самой верхушке. Она никогда не видела личных терминалов такой чистоты и яркости. Едва сдерживалась, чтобы не выхватить сияющий артефакт, который делал владельца практически небожителем.
А ещё заметила, насколько уверенно, по-хозяйски, пришелец рассматривает мёртвые терминалы. Техники не боялся, сердился на неё. Так ведут себя Высшие — те, кто привык приказывать машинам. «Если действительно инженер из тех, кто пишет команды, — размышляла она, — то я вытащила из стока не обычного потеряшку, а ключ». Правда, всё равно не сумел запустить отключенную технику. Может, и притворяется.
— Ты ведь из Архитекторов… — выдохнула она, не сводя глаз с телефона. — Только у них такие ключи доступа. Твой РБЛ, видно, зашкаливает, если тебе шлют инструкции под землю. Ты ведь здесь не случайно? Стоки зачищаешь? Выполняешь секретную миссию? Ты можешь поднять мой рейтинг?
— Не знаю, — кратко и честно ответил на поток вопросов, держа голос ровным. Но внутри всё трепетало. Не хотел объяснять до конца самим непонятое. Может быть, он и ошибается в предположениях.
Экран зарябил помехами — процессор не справлялся с потоком данных, пластик перегревался в ладони. Дисплей в последний раз полыхнул ядовито-белым — аккумулятор не выдержал скачка напряжения. Контроллер питания, разогретый до предела попыткой дешифровки сигнала, с тихим щелчком разомкнул цепь. Корпус остывал, становясь куском бесполезного лития и кремния. Связь с прошлым оборвалась окончательно — цифровой помощник превратился в пустую коробку.
Несмотря на растущую уверенность в окружающей среде как в галлюцинации, он по-прежнему не воспринимал себя господином мира, лишь испуганным туристом в аду.
Его отрицание спутница истолковала высокомерием элиты, но первая тень сомнения всё же зародилась. Высшие не трепещут от страха и не оглядываются по сторонам с загнанной паникой, не зная, куда открывается обычная дверь. И двигается тяжело, создавая лишний шум и не чувствуя динамики подземелия. Поджала губы. Божество теряло блеск.
Из глубины туннеля, откуда они недавно вышли, донёсся слабый, но отчётливый удар металла о металл. Взвизг несмазанных подшипников, тяжёлый лязг механизма, приводимого в движение человеком. Нарастающий стук колёс по стыкам ржавых рельсов. Звук приближался, усиливался, резонировал в обширном пространстве.
— Крысы! — Лина схватила за плечо. — За мной!
Настойчиво потянула за собой, шикнула — не шуметь. Быстрым шагом добежали до следующего закутка. Луч выхватил свалку мусора, поднявшуюся горой почти до самого потолка. Тупик? Не успел испугаться — обежали мусорную кучу, открылся узкий проход в стене. Женщина скользнула внутрь, поманила за собой. Повиновался, пригнул голову, чудом не задев низкий камень притолоки. Проход закончился через десяток шагов. Луч высветил каменную кладку со всех сторон. Фонарь выключился, стало темно. Тусклый свет туннеля досюда не дотягивался.
— Сюда, — едва слышно прошептал голос в темноте.
Камни покрыты скользкой плесенью. Упёрся спиной, холод вытягивал тепло через тонкую куртку. Только успели протиснуться за едва заметный угол, как из-за поворота выкатилась самодельная дрезина. Двое мужчин отчаянно крутили ручной генератор, ещё двое сидели сзади, один держал в руках толстую трубу, похожую на старинную пушку. От них пахло застарелым потом, гарью и чем-то мерзким. Возможно, недоеденной падалью. Вонь ударила в нос раньше, чем транспорт поравнялся с их укрытием. Охотники не ехали — жадно прочёсывали пространство, выискивая любую тень, любое движение. Тяжёлый интерес хищника, ищущий не врага, а добычу. Сидящий впереди поднял голову и потянул воздух носом. Гиена почуяла свежую кровь.
Дикарка стиснула предплечье, призывая к полной неподвижности. Ногти впились до боли, но Андрей даже не поморщился. Боль отрезвляла.
Включился слабый свет светодиода — у дикарки, оказывается, был и собственный фонарик. Еле разрежал темноту, относительно ярко светил лишь на полметра.
В паре сантиметров от лица проползла мокрица, жирная и белесая. Покосился в сторону, боясь моргнуть. Лёгкие стонали от нехватки кислорода, но помогало поверхностное дыхание через раз — спасибо за науку старшине на сборах.
Женщина увидела расширенные зрачки — примитивный, инстинктивный страх перед обычным насекомым. Высшие давно вытравили в себе такие реакции, заменив эмоции схематичным анализом. Его же слабость видна и без фонаря. Ошибка проявилось окончательной очевидностью: визитёр сверху не контролировал ситуацию, он — заложник обстоятельств, бесполезный хлам, вроде груды ржавого железа вокруг них.
Тележка пронеслась мимо, поднимая клубы пыли и унося с собой звон металла. Оба затаились, прижатые друг к другу, дыхание сбитое. Грохот утихал, но Лина не спешила выходить. Неожиданно охватила объятием, её руки заскользили по телу, ощупывая плечи, лопатки, шею. Не ласково, даже не обыск. Ощупывание костей под кожей. Попытался спросить, в чём дело, но маленькая ладошка зажала рот. Нервно помотала головой — не лучший момент для разговора.
Звук полностью затих, и тогда дикарка грубо оттолкнула мужчину. Её взгляд, ещё недавно полный благоговения, горел яростью обманутого человека. Вот же дура, приняла кусок полированного пластика за алмаз.
— Кто ты такой? — злобно прошипела она, хватая за воротник. — У тебя нет Кода. У тебя нет имплантов. Ты чудом не сдох, мешок с костями.
Он не отвечал, приковал взгляд к чёрной дыре, где скрылась тележка Крыс. Лина опомнилась — потом выяснит. Сначала надо найти более тихое место.
— Могут вернуться, — прошептала она. — Ищут кого-то. Их слышно. У них дрезины на ручных генераторах — быстрые, но громкие. Слышны издалека.
Мозг уже привык к анализу сбоев, и достроил картину мира. Крысы — мародеры, выживающие за счёт других. Обычные падальщики. Но в замкнутой экосистеме эти падальщики заняли нишу стайных зверей, способных загрызть ослабевшего льва. Существовали за счёт пожирания остатков цивилизации. Паразиты на теле умирающего гиганта.
Подождали ещё пару минут.
Женщина осторожно проверила обстановку, высунув голову из-за угла — пусто.
— Повезло, — сказала она вполголоса. — Сейчас надо шустро. И без света.
Они побрели в темноте по узкому штреку. Вскоре проход расширился, и они вышли на небольшой заброшенный перрон. Из вентиляционных решёток проникал слабый свет с поверхности. Станция давно заброшена. Огромные пилоны, когда-то облицованные мрамором, оскалили ободранные провалы. На одной из колонн сохранились кусочки мозаики: счастливые рабочие строят светлое будущее. Теперь у рабочего не было лица — выщербили то ли пули, то ли время. На полу валялись остовы турникетов, похожие на ребра ископаемых ящеров.
Проводница остановилась. Выставила руку. Протянул свою в ответ, не ожидая подвоха. Ладонь тут же угодила в захват, локоть вывернулся в заломе за спиной.
— Назови Заговор! — потребовала она, прижимая Андрея к колонне. — Если ты из Города, ты должен знать коды лояльности! Молчишь? У тебя нет ни одного импланта — ты не Высший. Ты не Книжник. Кто ты такой? Я рисковала, пряча тебя, а у тебя нет доступа даже на глоток чистой воды. Ты всё-таки из клана? Новые Крысы?
Нож коснулся горла. Хотела не напугать — ждала реакции. Любой верхний при намёке на опасность выдаёт код авторизации рефлекторно, первым словом. Если же промолчит — либо безумец, либо… не понятно кто.
Пространство следило за ними пустыми провалами проёмов. Тут не осталось даже крыс — настоящих, с хвостами. Всё живое давно поймали и сожрали. Оставили только кости и тишину, давящую на перепонки.
— Я не крыса, — еле просипел надтреснутым голосом. — Отпусти.
Нож мелькнул перед глазами в последний раз и исчез за периферией зрения. Хватка исчезла. Вскинул голову, но попутчица уже стояла в нескольких метрах от него. При первом же движении отпрянула ещё дальше.
— Считаешь, Крысы — худшая из местных радостей? — по лицу промелькнула тень. — Бывает и пострашнее. Крысы пытаются выжить. Забирают, если плохо лежит или можно отнять. Но хотя бы не забирают. Довольствуются найденным. Или отобранным у слабых. Закон дикости.
Лина до сих пор чувствовала его пальцы — мягкие, не знавшие тяжёлого труда, но и без золотых контактов элиты. Бесполезность в туннелях — смертный грех. Защитить не сможет, не проведёт через шлюзы и не поднимет РБЛ. Напротив, тянет на дно, делая лёгкой мишенью для патрулей и Крыс. На визитёра разозлилась до бешенства, но ещё сильнее — на саму себя, как можно было так обмануться? Принять за высшего планктон с нулевым рейтингом. Но почему так упорно отказывается называть код? Впрочем, ей нет дела. Больше нет.
Отступила ещё на шаг.
— Кто же забирает? — спросил Андрей, пытаясь задержать её ещё хоть немного.
— Хищники. — произнесла слово ругательством. Понизила голос, опасливо косясь на тёмные провалы, будто опасаясь призвать страшных демонов самим упоминанием. — Приходят с поверхности. Не на ржавых платформах. На настоящих машинах, которые не громыхают, а бесшумно скользят. Со сканеры, которые всегда находят тех, кто прячется. Их цель — не еда. Им нужны мы. Тех, кого поймают, утаскивают наверх. Сдают для баллов. Или убивают по дороге. Или отправляют на утилизацию. Никто из тех, кого утащили наверх, не возвращался прояснить подозрения. Крысы — мелкие воры, хотя среди них встречаются полные психи. Но от Крыс можно убежать, а вот от этих — нет.
Он с трудом подавил позыв содрогнуться. Желудок скрутило спазмом. Образ охотников, утаскивающих пойманных наверх скотом на бойню, страшнее людоедства. Мир продолжал шокировать жестокими правилами.
— Я ухожу, — отступила назад, затем ещё раз. Лицо приняло отстранённое и непроницаемое выражение. Окончательно отступила в тень. — С тобой я — труп. Твоё присутствие фонит громче любой сирены. Ты не можешь правильно дышать и ходить. Ты не умеешь исчезать. Ты веришь в разбитые стёкла, а я не обязана умирать за того, кто даже не догоняет, где находится, и кто вокруг него. Фонарь мой — у нас договор.
— Как же мне быть? — только и нашёлся с вопросом.
— Вода собирается из протечек, — луч метнулся, освещая мокрые линии на колоннах. — Еда… Если повезет, можно найти в старых служебных помещениях. Или у Крыс отбить. Иногда удается подобраться к местам, где сбрасывают отходы. Там можно найти съедобные куски, если ты не брезгливый. Иногда приходится жевать плесень. Иногда — червей. Здесь за еду убивают. Или умирают, добывая. Посмотри на мои шрамы? Думаешь, от ножа? Цинга. В местной сырости ничего не стоит сгнить заживо.
Глубоко вздохнула. Из тени поблескивали глаза, отражающие луч фонаря.
— Я дам тебе последний совет. Существует одно-единственное главное правило. Никогда. Никому. Не доверять. Любой, кого ты встретишь, потенциально опасен. У каждого своя территория, секреты и цели. Ты не навредил мне, но это ничего не значит. Я не могу тащить тебя за собой. Ты громкий. Ты яркий. Ты пахнешь чужаком. С тобой я — мишень. Твоя одежда громко шуршит. Твоя подошва стучит, а не скользит. Ты громко дышишь. Ты привлекаешь внимание. Крысы почуют тебя из соседнего сектора. Хищники моментально засекут твой тепловой след — ты не умеешь успокаиваться. Ты — яркое пятно, которое любой захочет стереть. Я не хочу стоять рядом, когда полетят пули. Прощай, человек из ниоткуда. Ты бесполезен для меня.
Приняла решение. Щёлкнул выключатель и луч погас. Из темноты донеслось:
— Ты другой. Я не знаю, откуда ты, и что за штука у тебя в кармане. Но тут не место для долгих разговоров. Я иду дальше. И ты тоже должен. Сам.
Андрей растерянно замолк, не находя подходящих слов. Секунду назад союзники — делили на двоих укрытие, а теперь сбрасывает спутника как ненужный балласт. Без благодарности или сантиментов. Он — обуза. Багаж. А единственная местная ходовая валюта — полезность. И полезность потеряшки равна нулю.
Не успел ничего произнести. Беглянка сделала несколько быстрых шагов и шорох шагов исчез, слился с темнотой. Крикнул вслед:
— Лина! Стой! Подожди!
Нет ответа. Звук скользящих шагов поглотило огромное пространство. Она снова в привычном мире выживания, где нет места жалости к бесполезным пришельцам. Отделалась от него, как от ненужной детали. Бросила абсолютной пустоте, лишённым единственного проводника и всякой надежды. И даже найденного фонаря.
Крик погиб в темноте руин заброшенной станции. Он опять останется один. Чужой в чужом мире, ещё и брошенный единственным, кто помог. Одиночество обрушилось на него всей своей тяжестью. Он же не просто брошен — признан негодным к существованию. Менеджер, сисадмин, ведущий специалист… — все его звания теперь ничего не значили, пустой звук. Он стоял посреди руин — очевидно лишний элемент. Пока не удаленная биологическая ошибка. Страх вернулся окончательным приговором. Его время истекало.
И из туннеля насмешкой снова донесся знакомый звон металла. Гораздо громче и отчётливее. Крысы возвращались. До них долетел крик, и они решили проверить, не спрятался ли кто в секторе. Но теперь он стоял в темноте, без укрытия и защиты, а приближающееся грохотанье раздавалось всё громче. Скрип колёс, дыхание людей, налегающих на рычаги, слились в монотонный и неотвратимый шум. В подошвах ботинок отдавалось зудение рельсов. Вибрация проникала в кости — хотелось сбежать, забиться в самую глубокую щель и скулить. Но бежать некуда. Туннели прямые, ведут в неизвестных направлениях. Нет ни едущей платформы, ни оружия. Жертва, пойманная в ловушку.
Ржавая тележка вынырнула из-за поворота, тускло осветили перрон самодельные фонари. Кинулся к куче искореженных обломков, уже понимая — укрыться не успеть, слишком большая дистанция — успеют заметить. Тени вокруг предательски расступались, выставляя напоказ всем, кто скользит во тьме.
Глава 8
Он изо всех сил вжался в пол. Пыль забила ноздри, щекотала горло, рвалась кашлем. Стиснул челюсти до скрипа зубной эмали. До боли впился щекой в камень. Дребезг нарастал. Тусклый свет беспощадно выхватывал у темноты новые участки пола. Зажмурился в тщетной надежде остаться незамеченным, хотя груда обломков почти его не скрывает.
— А вот и наш голубчик! — прохрипел голос, когда гремящая тележка затормозила всего в нескольких метрах. От нагретого металла полыхало жаром. Стук колес сменился визгом тормозных колодок — развалину умело модифицировали в боевую колесницу подземного мира. Колеса обмотали тряпками для плавности хода, но металл все равно громыхал. На бортах торчали наваренные шипы из арматуры, спереди синей изолентой примотали гротескный тотем новой эпохи — череп мелкого животного. Фары ударили прямо в лицо. Пойманный сощурился.
Двое спрыгнули на перрон, один навел на жертву самопал — набитый гвоздями обломок водопроводной трубы толщиной с бревно. Одноразовое оружие, способно превратить в фарш с первого выстрела.
— Чего скучаешь, милчеловек? — поинтересовался насмешливый голос. — Отбился от народа? А ну, выкладывай вкусненькое, по глазам вижу — у тебя полные карманы!
Андрей поднял руки, отрицательно мотнув головой.
Другой, сухой и жилистый, приблизился, безразлично сканируя жертву с головы до ног и обратно. На куртке из пластиковых лоскутов ожерельями висели наборы гаек и предохранителей. Похоже, не в качестве украшения — валюта или знаки отличия в иерархии.
— Полюбуйся-ка, Гнилой, свежий кандидат в утиль, — сухой сплюнул себе под ноги. — Воротничок чистенький, оператор, класс Б? Спорим, оператор жилого сектора, ммм, Гамма? Нагляделся я на них в распределе, наглый народишко. И этот вот тоже — обнулился и сразу к нам, в сточную канаву? Добро пожаловать в зону нулевого рейтинга, коллега, разрешите изучить ваш социальный статус.
Ловко обшарил карманы. Извлёк зажигалку, пару смятых купюр— их повертел и с непониманием отбросил, затем нащупал телефон.
— Ого! Зацени-ка! Блестяшка! — покрутил гаджет в пальцах. — Да ещё и чистенький какой! Книжники на Полянке такой экран с руками оторвут.
Перехватил, жадно поскрёб ногтем корпус.
— Да и чипа слежки нет. Чистый кремний. Вскроем, вытащим кристаллы памяти — можно целую запретную библиотеку залить, самый злобный сканер не сотрёт.
Телефон исчез в поясной сумке. Жалко девайса, но это может оказаться наименьшей из потерь.
— Ну, рассказывай, чего застыл? — толкнул дулом ружья другой Крыса. — Ты откуда такой? Как там наверху? Заговор-то помнишь ещё?
Оба Крысы хором загоготали.
— Стойте! Я могу быть полезен! — вскинул открытые ладони, перекрикивая хохот Гнилого. — В моём телефоне чертежи автономных систем питания. Я могу починить ваши генераторы!
Третий, прежде неподвижный, поднял голову. На лице сквозь мутную отрешённость проскользнул интерес и тут же угас, перешёл во взгляд снулой рыбы на льду. Он сидел, сгорбившись, воображаемая тяжесть давила ему на плечи сильнее гравитации. На шее болтался обрывок кабеля, завязанный сложным плетёным узлом. Возможно, талисман, а может и удавка, ждёт урочного часа. Бормотал себе под нос, перебирал пальцами, печатая на воображаемой клавиатуре. По сравнению с грубыми спутниками выглядел тихим помешанным, и немного — интеллигентом. Но больше всего походил на сломанную игрушку, не выброшенную из сентиментальных соображений.
— Оставьте, — прохрипел он. — Не похож на других…
— Заткни пасть, Профессор! — рявкнул сухой. — Совсем спятил? Тебя с нулевым РБЛ подобрали, когда ты помирал с голоду, помнишь? Сиди и жди, пока не спросим. Проф у нас Оценщик, — пояснил он. — Определяет, за какой предмет Книжники дадут консервы. А то бывает наберёшь, а там один горелый пластик. У него наметан глаз на артефакты, с первого взгляда знает, есть ли в железке толк. Раньше в Архиве сидел, пока за несанкционированное любопытство не выставили.
Он передразнил слабый старческий голос:
— Потратил все на древнекитайский. На знания великой цивилизации, существующей с глубокой древности…
Снова заговорил, на этот раз в интимной, дружеской манере — тон менял не хуже профессионального актёра:
— Мы ведь тоже когда-то пели гимны Лояльности по утрам, — осклабился в неприятном оскале. — Я отчёты в трех экземплярах писал. Но когда квота падает до нуля, этикет меняется. А сейчас мой единственный отчёт — хруст костей тех, кто не успел добежать до шлюза. А Заговор и крысиного хвоста не стоит, если только у тебя РБЛ не в тысячу. Но зато есть одно правило — ешь или будь съеденным.
Последняя фраза выделилась жёсткой артикуляцией. Лица, искаженные тенями от фонарей, выражали не агрессию и злобу, а равнодушный прагматизм. Страшный, людоедский прагматизм. Они не ненавидели его — калькулировали питательную ценность тела.
Андрей вздрогнул всем телом, колени предательски ослабли.
— Эрбээл… — незнакомое слово застряло в горле. — Я не знаю, у меня нет…
Крысы обменялись короткими немыми сигналами. На их лицах появилось выражение откровенного злорадства.
— Нету? — растягивая слоги, проговорил сухой. — Ну, тогда ты совсем бесполезный. И наверху за тебя никто не даст и ломаного гроша. А жаль, такой упитанный…
Гнилой облизнул губы. В прежнем безразличии взгляда проявилось новое, хищное выражение. Голод.
— Знаешь, парень, — снова заговорил первый в интимной манере, подходя совсем близко. Остро пахнуло давно не мытым телом. — Мы давно не ели свежего мяса. Тут-то нас совсем на сухом пайке держат. Но иногда спускаются такие вот. Отбившиеся. И тогда у нас пир.
Скрутило желудок. Пир — не метафора. Оскалились жёлтые, сточенные клыки. Они воспринимали улов не человеком, а куском мяса на прилавке. Каннибалы. Он попал к каннибалам.
— Ресурсная база скудеет, приятель, — Гнилой погладил ствол самопала. — Сверху сбрасывают только отходы, а органике нужен белок. Ты ведь не хочешь деградации наших аналитических способностей до амёбного уровня? Тогда считай, участвуешь в принудительной переработке во имя поддержания интеллектуального потенциала. Свежий биоматериал нынче в дефиците.
— Не бойся, — рассмеялся Сухой, — мы не такие уж и звери. Дадим тебе шанс. Поиграем. Даже фору дадим. Сможешь уйти — не тронем. Беги.
Указал глазами на тёмный круг входа в штрек. Повторного приглашения не потребовалось. Андрей сорвался с места загнанным зверем, бессмысленно бросаясь в непроглядную тьму. Бежал, спотыкаясь о шпалы, разбивал колени, не замечая боли. Мозг отключился, работали одни рефлексы. Шаг, вдох, поворот. Шаг, вдох, поворот.
Кровь стучала в висках, заглушая шаги. Под ногами хрустело стекло, скользили подошвы в лужах маслянистой жижи. Чуть не напоролся лицом на свисающий с потолка ржавый крюк, вовремя увернулся лишь благодаря животному чутью.
Сзади раздался истеричный смех и улюлюканье.
— А ну, догоняй! — крикнули сзади. — Ату! Мясо должно быть быстрым!
Прыжком нырнул в боковую нишу в надежде спрятаться в тенях за выступом. Сердце колотилось так, что могли услышать на поверхности. Но уже через секунду луч фары дрезины безжалостно выхватил в темноте. Слепых зон не найти — туннель просматривался насквозь. Математически выверенная пустота не давала шанса спрятаться.
Снова бросился бежать, чувствуя затылком дыхание преследователей. Бежал изо всех сил, задыхаясь от страха. Ноги отказывались повиноваться, как ни гнал их вперёд, чувствуя звериные морды за спиной. Грохот колёс и торжествующие крики становились всё ближе. Крысы нагоняли. Неслись за ним, с наслаждением продлевая охоту. Смех, свист чудом не попадающих снарядов. Гвоздь чиркнул рядом с ухом, осыпав лицо каменной крошкой. Специально мазали. Загоняли, наслаждаясь мучениями, к тупику или к обрыву, или к логову. Игра кошки с мышкой, где мышь заранее проиграла, но ей позволяют пробежать ещё пару метров ради забавы.
— Ну, жирдяй! — кричал преследователь, почти наступая на пятки. — Устал? А мы ещё нет!
Беглец споткнулся, чуть не упав, но удержался на ногах. Неужели конец? Заблудиться в лабиринте туннелей, попасться на пир к дикарям. Такой бесславный финал. Выдохся, мышцы свело судорогой. В груди пылал жар. Ноги налило свинцом. Пришло чувство предела — он дошёл до крайней точки, тело отказывалось подчиняться воле. Качало, перед глазами плыли круги, каждый стук сердца бил набатом по ушам, заглушал крики преследователей. Вдохи врезались в глотку битым стеклом.
Совсем рядом полыхнул яркий свет. Мощный, ровный, белый луч.
Стук колёс оборвался. Агрессивные выкрики Крыс сменили панические вопли.
Бегун, еле удерживая равновесие на измученных ногах, повернул голову. Из глубины, скользя по рельсам, приближалась машина. Приземистая, угловатая. Шла плавно, игнорируя неровности пути. Хищная рыба в мутной воде. Из машины донесся короткий мелодичный писк — такой издаёт сканер на кассе, когда штрих-код успешно считан. Прожекторы не освещали пространство, прощупывали, разбивая на сектора. Коротко пиликнул смутно знакомый звук: машина не искала врагов — проводила инвентаризацию имущества. На её носу сияли два мощных прожектора, выхватили из темноты окаменевшие фигуры.
Сверху спрыгнула тень. Высокая, в тёмном, облегающем комбинезоне, с головой, скрытой под чёрным шлемом. Чёткий угловатый силуэт выглядел порождением из тьмы. Броня поглощала свет — матово-чёрный доспех не давал бликов. Перемещался без рывков и пауз, очень быстро и совершенно неостановимо. Воздух рядом с ним густел, пространство искажалось.
Все произошло раньше, чем мозг успел осознать происходящее. Ружье Крысы выстрелило, но робот с нечеловеческой скоростью уклонился, и выстрел разорвался о борт машины за спиной. Через секунду уже мелькнул среди Крыс. Маркер на миг задержался на Профессоре, и динамик машины выдал низкое дребезжание, повтор пяти быстрых звуков. Андрей с мутным удивлением узнал сигнал — устройство не опознано. Взмах, и Профессор беззвучно рухнул наземь. Даже выстрела пожалели. Слишком истощён, биологический статус не соответствует искомому.
Сухой Крыса отлетел в сторону. Движения робота обгоняли взгляд. Без лишних замахов. Экономная траектория, выверенный вектор удара. Не дрался, выполнял зачистку. Бандит с ружьем пытался убежать, но единым движением был настигнут, схвачен и заброшен в люк.
Недавний заложник тупо наблюдал за упаковкой добычи в машину. Рывок, лязг тяжёлого люка, глухой удар тела о металл внутри. Бег на грани выживания вытянул из тела последние силы. Заторможенный мозг фиксировал происходящее покадрово: вот Крыса ещё сопротивляется, а через секунду — груз в железном ящике. Люк захлопнулся, крик пленника внутри тотчас оборвался — идеальная звукоизоляция у машины.
Машина издала мелодичный двойной сигнал «Task Complete», и на её борту на секунду вспыхнул зеленый индикатор: «Capacity: 1/1». Долговязый оказался достаточно ценным экземпляром, достойным загрузки в контейнер.
Последний из оставшихся Крыса попытался сопротивляться, размахивая ружьём. Крест остановился на его груди. Раздался щелчок, похожий на срабатывание реле, и биоробот переместился, перехватил Сухого, одним движением сломал оружие пополам о колено. Схватив Крысу за горло, поднял над землей.
— Нулевой заговор, — глухо пророкотал искажённый механикой голос.
Шея Крысы изломилась под неестественным углом, тело отлетело в сторону, ударилось о стену и сползло на платформу. Эффективность автоматического шредера, уничтожающего замятую бумагу. Сумка отлетела в сторону и упала в маслянистую лужу на шпалах. Убийца повернулся к последней жертве, готовый навсегда вычеркнуть из лога текущей операции.
Вблизи стало понятно — это вовсе не робот, а человек в штурмовой броне. Грубые сервоприводы внешнего экзоскелета, жужжащие при каждом шаге, шланги гидравлики, стянутые хомутами. На затылке шлема мигал блок.
Алый сенсор, сканируя, ощупывал лицо, тело. Андрей ждал боли, удара током, смерти. Но луч скользил по нему, не задерживая прицела.
Из машины донесся частый, захлебывающийся писк — звук ошибки в бесконечном цикле. Сканер раз за разом натыкался на объект, который не находил в базе. Неопределенная переменная, ломающая логику выполнения программы. Прицел бешено метался, не в силах зафиксироваться на объекте.
Полностью опустошённый беглец стоял в полуобмороке, и ждал выстрела. Палец в бронированной перчатке лёг на спуск. Дёрнулся, нажимая на крючок.
Выстрела не последовало. Оружие издало короткий, недовольный писк. Так пищит «защита от дурака» — аппаратная блокировка. Красный крест прицела на бронированном стекле визора задёргался и рассыпался на пиксели. Контроль наведения не срабатывал на то место, где стояла цель. Из динамика снова донёсся короткий писк системной ошибки.
Стрелок ещё раз нажал на спуск, но оружие не сработало — предохранитель не снялся, оружие не признало существование цели. Боец с досадой тряхнул головой, решив — виновата сырость и сбой датчика.
Блок наведения не видел в перекрестье ничего, кроме пустого места, и электроника заблокировала боек. Стрельба в пустоту программно недопустима, а выстрел по объекту, не имеющему сигнатуры, равносилен стрельбе по голограммам.
Хищник дёрнул головой, сервоприводы издали недовольное жужжание. С досадой стукнул по шлему ладонью.
— Вечно тупит в этим катакомбах, — снова раздался искажённый голос с явным раздражением. Динамик воспроизводил человеческую речь через фильтр помех.
На боку машины, прямо над гусеницами, мигала оранжевая пиктограмма песочных часов и цифры: «02:15». Таймер смены. Или период до закрытия шлюза. Убийца снова глянул на жертву, на индикатор. «02.12». План по утилизации выполнен, а возиться с глюком означало сорвать график поставки и обрушить собственный рейтинг.
Динамик машины выдал короткую трель — запрос приоритетов. В контейнере бился пойманный бандит — подтвержденная единица биоресурса. Надо доставить. Возиться, тратить боезапас, устраняя визуальный артефакт, наложенный барахлящим процессором на реальность, рискуя сохранностью пойманного экземпляра, не имело смысла.
Кровавый крест в последний раз скользнул по растерзанной одежде, синякам от побоев. Свет визора погас. Возможно, посчитал беженца и так не жильцом. Или решил — нет смысла тратить время на биомусор, если не получается просканировать.
Хищник отвернулся, одним прыжком взобрался на крышу машины, скользнул в люк. Дорогу всё ещё преграждала тележка Крыс. Машина набрала скорость и с силой врезалась в борт. Самодельная дрезина закувыркалась от удара, выпуская салюты искр при каждом столкновении с поверхностью.
Машина поехала дальше, уходя в непроглядный мрак. Увозя с собой пленника, чья дальнейшая жизнь может оказаться хуже смерти. Беглец проводил машину взглядом, стоя рядом с телами Крыс и разбросанными обломками.
Тьма снова сомкнула кольца, принимая обратно в набор спрятанных в ней объектов. Всё вновь погрузилось во мрак. Беззвучие, наступившее после рёва мотора, усилило ужас. Давило, обещая медленную смерть от голода или быструю — от возвращения других, более удачливых охотников.
Вдали затихал гул от транспорта в ад, на который повезло не попасть по чистой случайности. В ушах все ещё стоял частый писк ошибки сканера. У него нет идентификатора. Не тронули, потому что неисправен.
Но его уже ничего не волновало. Землю колыхнуло под ногами. Осел, теряя сознание. Чьи-то руки подхватили, затаскивая на себя.
— Ну вот, — мелькнула последняя мысль, прежде чем мир погрузился в абсолютную тьму, — всё-таки попал на пир… главным блюдом… только бы не проснуться…
Глава 9
Андрей застонал и вытащил себя из темноты, жадно схватил глоток воздуха широко раскрытым ртом. Сознание возвращалось обрывками. Тьма отступала лениво, липкой пеленой цепляла забытье за края тёмной ямы. Гигантским поршнем продавила обоняние гнилая вонь. Во рту неприятно завяз металлический привкус. Руки и ноги налились неподъёмной тяжестью. Слегка шевельнул головой, в затылке тут же вспыхнула боль.
На лоб опустилась влажная тряпка. От ткани несло сыростью и кислятиной, но прохлада тут же принесла облегчение. Каменный свод над головой плыл и качался. Грубые сколы породы складывали причудливые, угрожающие узоры. На секунду почудилось — свод опускается и сейчас раздавит его, как насекомое. Не потолок, сырая масса земли, терпевшая посетителей лишь до поры до времени.
Над ним склонилась Лина, в неверном свете масляной плошки напряжённое лицо выглядело маской. Нервно косила по сторонам, явно опасаясь обнаружения.
— Тише, — приглушенно сказала она, придерживая за плечо. — Не дёргайся.
— Зачем? — попытался оттолкнуть, но ладонь с силой придавила к подстилке. — Ты же ушла. Бросила меня. Почему вернулась? Посмотреть, сожрут ли меня?
— Лежи, герой, — огрызнулась с прежней агрессией, пальцы цепко захватили плечо. — Если бы я хотела твоей смерти, я бы просто подождала ещё пять минут.
С трудом сфокусировал взгляд и впервые заметил то, что мог бы увидеть сразу — она была очень красива. За грязью и лохмотьями угадывалась изысканность манер, не стёртая жизнью в стоках.
Слой въевшейся копоти и серой пыли не мог скрыть хищную правильность черт лица. Высокие скулы, прямой нос и широко расставленные глаза с пляшущим в ним пламенем плошки. Необычный цвет глаз, не испорченных даже лихорадочным блеском. Женщина двигалась с грацией кошки, и контраст между обликом и грацией сбивал с толку.
Мужчина заворожённо любовался движениями стройного тела. В каждом жесте — отточенная экономия сил. Грязевые разводы выглядели сложным боевым окрасом. Перехватила восхищённый взгляд и прищурилась, отчего выражение на миг потеряло всякую мягкость. В этой женщине таилось необычно много концентрированной жизни для задыхающегося подземелья.
Повязка на голове стягивала кожу. Во рту зависла горькая сырость.
С большим трудом приподнялся. Подстилка из тряпья была брошена в небольшой нише, вырубленной в старом коллекторе. Воздух застоялся, отдавал мокрой землёй. Вездесущая копоть въелась в подстилку, забилась под ногти. Мир здесь давно утратил цвета, оставив только варианты серого и чёрного.
В углу грудой свалили ржавые железки: погнутые гаечные ключи, мотки медной проволоки, обломки разбитых устройств. Для местного жителя подобный мусор со свалки, вероятно, считался сокровищами. Огонек светильника испуганно колыхнулся на каменном выступе — сплющенная консервная банка с фитилем, плавающим в мутном жире, выплюнула порцию едкого дыма. Раздался шорох в углу. Насекомые или осыпалась сухая глина. Где-то вдали гулко капала вода.
Стены надвинулись со всех сторон. Дыхание отяжелело — сказалось нервное напряжение. Покосился в сторону: выход завешен рваным куском мешковины, ткань заметно дрожала от сквозняка. Оттуда тянуло близкой опасностью. За тряпкой слышались шаркающие шаги и скрежет когтей. Страх дорисовывал в темноте силуэты фантастических чудовищ.
— Что там произошло? — сам удивился слабости голоса.
— Крысы. Хищник, — протянула кружку с теплой, чуть солоноватой водой. Жадно отпил, пролил воду на грудь. — Я видела, ты отвлекал их.
Андрей невольно зажмурился. Перед взором всплыла картинка: злые рожи, драная одежда, блеск ножей в свете фонаря. От них несло немытыми телами и безумием. Не кричали, шипели, окружая стаей шакалов. Помнил, как швырнул в одного камнем, попал и слышал хруст плоти от удара, но тот даже не замедлился. Словно наркоман под кайфом.
— …бежал, не пригибаясь, во весь рост, — закончила Лина. — Любой из нас полз бы, вжимаясь в землю. Мы учимся незаметности с детства. Ты же выступил натуральным идиотом. Но зато я тебе поверила.
Он непонимающе уставился на неё.
— Идиотом?
— Да. Так говорить с Крысами, так бросаться в стороны без знания местности… Никто из здешних не смог бы так сделать. Только тот, кто вообще не знает действительности. Ты не отсюда. Теперь я вижу.
Захватила кисть и повернула к свету. Грубые мозолистые пальцы скользнули по ладони.
— Твои руки… — запнулась, в голосе на миг промелькнула тоскливая интонация. — Длинные, чистые ногти. Гладкие. У моего мужа такие же. Были. Инженерные. Рисовал чертежи прямо на кухонном столе. Глупо, правда? Рисковать жизнью из-за воспоминания о призраке из прошлой жизни.
Дёрнула за пальцы, едва не вывернув запястье. Вскрикнул, но та не обратила внимания. Судорожно огладила мягкие подушечки, считывая информацию, недоступную сканерам.
— Гладкие, — негромко повторила она, и в коротком слове прозвучало больше тоски, чем во всём рассказе. — Так же держал, когда задумывался.
Её сочувственная оценка заставляла чувствовать себя неуютно, будила чувство, балансирующее между обидой и стыдом. Так смотрят на калек. Недавний авторитет офиса, ныне — бестолковый балласт, чудом не сдохший в первой же стычке. Уверенность в себе рассыпалась карточным домиком. Все накопленные за жизнь навыки — умение вести переговоры, знание архитектуры сетей, биржевых котировок — стоили меньше, чем умение бесшумно ступать. Вершина эволюции старого мира выродилась в новом в жалкий атавизм. Космонавт потерпел крушение на враждебной планете, где гравитация ломает кости, и убежал в открытый космос без скафандра.
Провёл ладонью по лицу, стирая испарину. Лина протянула кусок чего-то, похожего на сушеный корень. Андрей с сомнением взял, с трудом откусил. Жёсткие волокна. Во рту завис вкус прелой земли и тины, похоже, жевал сухую землю, вымоченную в болотной воде.
Масса вязла во рту, прилипала к нёбу, вызывая рвотный рефлекс. Женщина внимательно смотрела, как он ест, и он устыдился своего отвращения — для неё такой кусок прессованной дряни явно не лишние калории, позволяющие протянуть ещё день. Едва не поперхнулся, но сумел проглотить комок. Еда провалилась в пустой желудок, вызывая болезненный, но приятный спазм. Тело требовало калорий.
Вспомнил, как выбрасывал в мусорку недоеденные сэндвичи из кофейни из-за острого соуса. Вот же идиот!
— Поначалу решила, ты из них, — продолжила женщина после паузы, огонёк светильника продолжал давать отблески в широко распахнутых глазах. — Из тех, кто спускается поиграть с нами. Но ты не убил. И так глупо бежал, когда тебя гнали Крысы. А потом Хищник. Светил на тебя сканером, но не тронул. Ты — другой.
В голове была каша, прислушивался к словам, но прояснялось немногое. Кусками помнил погоню, бой с Крысами, а потом появление убийцы, голос, но вместе картинка не собиралась. Зацепился за фразу про сканер.
— Светил? — спросил он. — Зачем?
— У них на шлемах сканеры, огоньки такие, — объяснила она. — Наводят их на человека, и, если отменен Заговор, или РБЛ ниже тысячи — убивают.
— РБЛ? — переспросил, массируя виски. — Что это?
О чём-то таком же говорил тот бандит, который за ним гнался.
— Рейтинг Благонадёжности и Лояльности, — удивлённо расшифровала она. — Как ты можешь не знать таких вещей? РБЛ. Рассчитывается из твоей полезности. Сколько выработал, сколько донёс на соседей, насколько чист поступками. Если рейтинг падает ниже двух тысяч — попадаешь под контроль. Если ещё ниже — ты биомусор. Расходный материал. Но тебя не смог просканировать. Прицел засбоил. Обычно занимает секунду: сканирование — и выстрел. Либо ты раб, либо труп. А на тебе завис. И оружие засбоило. Такого я вообще никогда не видела.
Невольно озадачился. Сбой программы. Объект не найден. Бездушный механизм наткнулся на непонятную переменную, отсутствующую в базе. Сработал механизм обработки исключений. Если входные данные не соответствуют формату, либо выдается ошибка, либо игнорируется ввод. Для сканера — «null», отсутствие данных. У программистов не хватило ума или терпения прописать сценарий для объекта, которого нет в реестре. Спасён не магией, а чьей-то ленивой строчкой кода. Если глючит не сама техника, то её мозги.
— А где берут такой сканер?
Она помолчала, обдумывая услышанное.
— Не пойму, откуда ты, — наконец, заявила она. — Но точно не отсюда. Иначе ты бы знал про технологии.
— А что с ними?
— Сорок лет назад здесь летали маглевы, — она указала на ржавые направляющие. — По двести человек за раз. А потом Управление решило — личное перемещение следует запретить. Метро замуровали, оставили только технические пути для кабелей. Теперь там мёртвые зоны, куда даже Крысы боятся соваться из-за высокого напряжения.
— Раньше тут каждый день ездили миллионы, — вставил Андрей.
Дикарка захохотала в голос, но тут же осекла себя, испуганно оглянувшись:
— Миллионы людей под землей? Парень, ты приложился головой сильнее, чем я думала.
Он благоразумно промолчал.
— Вокруг полно неприкаянных, — продолжала дикарка. — Есть общины и колонии — их десятки. Крупный клан Крыс растит плесень на рабских плантациях в глубине, ведёт торговлю с другими. Независимые артели добывают руду для наземных заказчиков. Есть подполье, у них есть сторонники и внизу, и наверху. Есть Книжники, выкупают любое железо и данные, которые находят в туннелях. Даже рассказывают об инженерах, которые якобы живут в глубинных помещениях и не выходили наружу со дня очищения. В реальности гораздо чаще встречаешь нож мародера или пулю Хищника. Книжники — единственные, с кем можно безопасно говорить, и то если найти, чем заплатить.
— А почему ты не живёшь в колонии?
Та помрачнела, крепче сжала рукоять ножа.
— В колонии становишься заложником. Завтра их обнулят, а тебя схватят соучастником. Я предпочитаю быть одна. У одиночки никого нельзя отнять.
Разговор её будоражил, он решил сменить тему.
— Так как там с технологиями?
— Они под запретом. Ересь Сложности. Схемы, любая сложная техника — всё запрещено. Говорят, машины, однажды став умнее человека, чуть не убили мир. Нынче разрешены только простые решения. Утверждённые. Если ты просто чинишь старую микросхему — уже совершаешь преступление против стабильности. Рисуешь схему радиоприемника — бунтовщик. Моего соседа приговорили за сбор фильтра для воды из двух пластиковых бутылок и песка.
Она имитировала чеканку механического голоса:
— Обнаружено усложнение процесса обработки. Произведенное инженерное улучшение осуществлено без соответствующего допуска.
Добавила обычным тоном:
— Парня казнили прямо во дворе, а фильтр раздавили.
Он слушал и ужасался. Тут не просто диктатура, а целая система целенаправленной деградации общества. Ославить инженерную мысль ересью — кому это вообще пришло в голову?
— Но у вас же есть компьютеры… Им же нужна операционка. Линукс или ещё какая-то.
Слово повисло в воздухе. Женщина повернулась к нему вполоборота с нескрываемым интересом.
— Линукс. Я знаю это слово. В детстве прадед рассказывал про мозг для всех терминалов. Тем, кто вводил правильные слова, машина подчинялась. Прадеду за сто лет перевалило, заговаривался. Говорил, терминал продолжает разум.
Он не мог в это поверить. Технологии под запретом. Уничтожение Линукса. Мир без командной строки пугал его куда сильнее крыс-людоедов. Крысы пожирали людей, но запрет на технологии — саму цивилизацию, отбрасывал человечество в каменный век. Реальность 2125 года воплотилась в худший изо всех кошмаров.
«Мама…» — острым осколком вспыхнула мысль. Он же не успел вчера перезвонить. Больше никогда не перезвонит. Их больше нет. Ни мамы, ни отца, ни дурацких посиделок с друзьями, ни ипотечной квартиры. Весь мир, все, кого любил и ненавидел, перешли в геологический слой пыли. Абсолютно один, в аду, среди чудовищ.
Спазм сдавил горло, не дал сделать вдох. Он согнулся в поясе. Закрыл ладонями лицо, пытаясь сдержаться. Плечи затряслись крупной дрожью. Он — реликт. Ископаемое. И его дома физически не существует уже целый век.
Лина промолчала, видя — утешения не помогут. Молча пододвинула кружку с водой и отвернулась, давая право на слабость. Право, недоступное никому другому.
Посмотрел на свои ладони. Края ногтей почернели, но кожа оставалась белой, чужеродной для подобного места. Напрасно он жаловался на медленный интернет 2016ого года, живя в комфортном раю. Рай оскорбился и выгорел, оставив накипь на дне ржавой кастрюли.
— Близкие здесь — большая редкость, — произнесла тихо, как прочитав мысли. — Наверху, в Городе, люди заняты Заговором. А под землёй опасно. Но когда случается… близость — её не должны отнимать. Я навсегда одна, — она порывисто отстранилась. — Связи — крючки для системы. Начинаешь дорожить кем-то и становишься уязвимым. У меня нет никого, и выживаю. Мне не за кого умирать. И тебе не советую привязываться. Мой муж… был последним. Единственным, кто верил в возможность увидеть изменённый мир.
Встала, резким движением обтёрла нож о штанину.
— Я между всеми. Крысы меня не трогают — я опасна. Книжники терпят — приношу им детали. Я — курьер в аду. Мой дом там, где я брошу рюкзак, в слепых зонах в вентиляции. Я помогла тебе. Ты — очевидно не винтик Системы. Но не надейся на мою дружбу, я могу и убить.
Между ними исчез последний барьер. Она потеряла семью. Он — целый мир. Масштаб разный, но враг один. В судьбе Лины он увидел отражение собственной потери, и жалость к себе сменилась бешенством. Скучная прошлая жизнь была настоящей. И её украли. Кто-то превратил мир в цифровую тюрьму. Прошлое не вернуть. Но можно стать для уродливого будущего не перевариваемой ошибкой.
В двадцать первом веке тоже жили подонки, облечённые властью, но там существовали объективные тормоза — пресса, полиция, общественное мнение. Здесь же между желанием чиновника и исполнением приговора не стояло ничего.
Слова Лины о «Командной Строке» и «истинном Имени» машины набатом прогремели в голове. Оно же лежит в чёрном прямоугольнике, сочтённым бесполезной игрушкой. Судорожно похлопал по карманам.
Телефон.
— Мой телефон! — попытался сесть, голову закружило, упал обратно. — Его забрал тот бандит! Тот, кого…
Лина изумлённо вскинула брови.
— Наверняка, валяется там, на перроне, где все и произошло. Вместе с другим барахлом. Если не подобрали другие.
— На нём Линукс, Дистрибутив. Образ Kali Linux Nethunter. Полный набор инструментов для пентеста — взлома сетей. Я использовал память телефона для хранения. Я держал там на случай экстренных аудитов безопасности, когда нет ноутбука. Там всё: снифферы пакетов, дешифраторы ключей, эксплойты. Глобал-Протокол — наверняка надстройка над старым ядром. Если я получу дистрибутив, разверну, и получу доступ к физическому порту, я смогу обойти графическую оболочку и попасть в root.
— Я вообще не догоняю, о чём ты, — она непонимающе помотала головой. — Ты говоришь бессмыслицу.
— Мост между железом и софтом, Если у терминалов сохранены сервисные входы… Надо найти мой телефон, я смогу развернуть образ. Если разъем подойдет и питание совпадет… найдём ключ от чёрного входа.
— Всё равно ничего непонятно. И опасно. Туда могут вернуться. И Крысы, и… другие.
— Я знаю, — с трудом приподнялся на локтях. Голову ещё кружило, но внутри крепла уверенность. — Мы должны попытаться.
Женщина подошла к ржавой гермодвери и, не оборачиваясь, протянула к нему открытую ладонь:
— Твои часы. Отдай сейчас. Путь впереди опасный, и я не хочу рисковать головой ради инвестиции, которая не доживёт до очередного перегона.
Андрей инстинктивно прикрыл запястье рукой, ощутил закипающую злость.
— Ты уже получила фонарь, — выразительно посмотрел он на тяжёлый магниевый корпус у Лины в руке. — В темноте нормальный, чистый свет стоит дороже любой побрякушки. Ты сама подтвердила: патрули и Книжники за такой луч отдадут паёк на неделю. Я заплатил, и щедро. Часы получишь, когда Линукс заработает.
Лина на секунду оторопела, пальцы крепче сжали рифлёную рукоять фонаря. Неожиданный наглый напор ожившего полутрупа ошеломил, да и металл в руке действительно смотрелся весомым аргументом.
— Ладно, — опустила руку. — Но если он сядет до того, как мы придём, я заберу твои часы вместе с кистью.
Глава 10
Каждый шаг вздрагивал тупой болью в ушибленных рёбрах. Под повязкой на лбу пульсировала кровь. Ковылял по рельсам на чистом упрямстве. Телефон. Память. Шанс.
— Надо спешить, здесь обычно никто не ходит, но все же тут небезопасно, — торопила она, ведя незаметным штреком, петляющим между основными путями. Словно владея ночным видением, успевала заметить каждый выступ и все трещины на нём. Иногда застывала на месте, касаясь едва заметных отметок — меток, выглядевших для Андрея обычными царапинами, но для проводницы — натуральной дорожной картой. Один раз резко дёрнула за рукав, не давая наступить на прогнившую доску, прикрывавшую дыру водостока. Без неё сломал бы ноги уже раз десять.
Провёл ладонью, скользнул по мокрому камню. Воздух набряк, уплотнился. Потолок нависал над головой, и накрывало душное, паническое чувство, будто бредут внутри узкой щели закрывающегося каменного пресса.
Безмолвие играло над слухом. Стоило остановиться и слух выхватывал десятки микрозвуков, пускающих мороз по коже. Где-то в глубине коммуникаций гулял ветер, доносился стонами страдающего животного. С потолка срывались капли, ударяя по металлу старых путей с четкостью метронома. Каждый собственный шорох куртки раздавался грохотом, способным разбудить всех тварей в радиусе километра.
Присутствие Лины оживляло темноту, она постоянно комментировала его ошибки. Кроме того, давала короткие, но меткие советы.
— Дыши животом, — посоветовала через пять минут быстрого шага, услышав запыхавшееся пыхтение. — Тише будешь. И ставь ногу на полную стопу. Не шаркай.
Вскоре добрались к заброшенной станции, откуда начался его кошмарный забег от Крыс. Пошли по туннелю. Включили фонарь, обшаривая пространство. Луч выхватил опрокинутую платформу, тёмное расплывшееся пятно на шпалах. Оказывается, убежал всего на полсотни метров. А тогда показалось, что бежал целую вечность.
— Тела исчезли… — озадаченно поскрёб он в затылке. — Тот, сухой… которого задушил Хищник… И Профессор…
— Ты не хочешь знать, куда они делись, — покачала головой Лина.
Приметил серую сумку, валявшуюся рядом. Похожа на сумку того бандита, забравшего телефон. Порылся, нащупал гладкий корпус.
— Есть! — воскликнул он, вытаскивая телефон.
Лимит везения на сегодня оказался исчерпан. Когда Хищник отшвырнул Крысу об стену, основной удар пришёлся на сумку. Экран разбился вдребезги, по нему расходились глубокие трещины. Задняя крышка отошла, обнажив внутренности. Телефон пострадал, но пока непонятно — насколько. Корпус деформирован в районе аккумулятора — плохо. Если батарея потекла, плата могла окислиться. Модуль памяти обычно распаян в центре или ближе к камере.
Шанс. Мизерный, но все же шанс, может и повезти. Нажал на кнопку включения — ничего. Видимо, сдохла плата. Стиснул бесполезный хлам в пальцах в напрасной надежде, что треснувшую плату может запустить удачное нажатие.
Реклама сама пришла в голову: «Сверхпрочное стекло, титановый корпус, защита от падения с высоты двух метров». Маркетологи того мира не предполагали встречи гаджета с полом московского метро. Вся хваленая защита от падения — фикция под стать надеждам.
— Не включается, — голос его дрогнул. — Плата, скорее всего, треснула.
Проводница подошла ближе, пошевелила обломки пальцем.
— Всё теперь? Твой линукс сломан?
В её голосе зазвучало откровенное недоверие.
— Не совсем, — повертел гаджет, рассматривая деформацию корпуса. — Операционка и все хакерские утилиты лежат на чипе флеш-памяти. Ему не нужен экран или батарея. Если сам кристалл памяти цел, я смогу прочитать.
— Всё равно ничего не ясно. Что надо сделать?
— Надо выпаять чип. Или подпаять контакт напрямую к плате, минуя сгоревшие цепи. Но нужна мастерская. Верстак, паяльник, оптика. На коленке не получится. Ты куда?
Лина возилась с трофейной дрезиной. Опрокинутая набок, железка смотрелась неказисто, но, судя по всему, оставалась вполне работоспособной. Ось колесной пары намотала кучу тряпья и проволоки — бандиты не особо следили за техникой. Вытащила нож и принялась срезать мусор.
Андрей попытался оценить состояние подшипников. Смазки нет, одна закоксовавшаяся грязь. Чудо инженерной мысли держалось на честном слове и грубой силе. Попробовал перекатить и установить на рельсы неподъёмно тяжёлое железо. Боль в рёбрах вспыхнула белым огнем. Налёг плечом, ботинки заскользили по маслянистым шпалам. Женщина толкала с не меньшей силой, мышцы напряглись под тонкой курткой. С глухим стуком колеса попали в колею.
— Мы можем на ней добраться, — предложила спутница, — до тех, кто сможет помочь. Далеко не уедем, но до следующих станций доберёмся.
Наскоро приспособила подаренный фонарь к дрезине, примотав куском кабеля к передней раме. Пусть послужит фарой, мощным лучом прорезая тьму. Тележка отозвалась на усилие надсадным воем несмазанных осей. Каждый толчок рычага грыз суставы, за любое движение приходилось платить собственной болью.
Скрипя железом, транспорт тронулся с места. Сначала неохотно, со скрипом проворачивал колёсо. Ржавчина сопротивлялась каждому движению. Приходилось наваливать на рычаг весь вес тела, не обращать внимания на протестующую боль в мышцах. Преодолевая колоссальную инерцию, он толкал не тяжёлую тележку, а весь застывший мир. Когда прошло первое сопротивление, ход немного выровнялся. Мужчина мерно качал рукоять, а женщина управляла направлением. Попробовал перехватить рычаг поудобнее, но локоть жёстко оттолкнул его назад.
— Не дёргай лишний раз, скорость собьёшь, — сухо бросила она.
Женская спина напряглась, вытянулась в струну. За путём не следила — сливалась с железом, чутко прислушиваясь к каждому шороху за пределами фонаря. В колеблющемся от движения свете выглядела совсем иначе. Глаза — настороженные, глубокие, в них отражалось пламя. Понятно, почему так понравилась чиновнику. Интересно бы увидеть её в платье.
Дрезина скользила по рельсам, разрезая темноту лучом фонаря.
Стук колёс о стыки рельсов резонировал во всех суставах. Дребезжание платформы передавалась в позвоночник. Тело стало частью грохочущего сквозь тьму механизма.
— Далеко нам ехать? — спросил он.
Не ответила. Он сконцентрировался на выплывающих из темноты картинах.
Свет выхватывал куски стен, чудом сохранивших остатки декора. Плитка, некогда глянцевая, пошла сетью старческих трещин и жёлтыми потёками. Скелетом выплыл лишенный внутренностей остов торгового автомата — давно разграбили вандалы. Пластик корпуса помутнел и раскрошился, обнажив ржавое нутро. Служившие комфорту вещи остались напоминанием об ушедшей под землю цивилизации.
Ритмичное повизгивание металла гипнотизировало и било по нервам. Они производили слишком много шума. Так и катились, громыхая, будто духовой оркестр, через центр мира, в котором успех выживания целиком зависит от тишины. Он качал рукоять и нервно косил взглядом на возникающие тёмные провалы боковых ответвлений. Тьма скалилась в пустоте. Чудилось шевеление на границе света, тьма скользила, играя с воображением. Хотелось бросить рычаг и спрятаться, но проводница даже не поворачивала головы. Целилась только вперёд, доверяя скорости движения больше, чем скрытности и маскировке.
Длинная, изломанная тень метнулась, отставая и снова догоняя. Нечто многоногое бесшумно сопровождало их, выжидая, когда замолкнет железо. Крепче вцепился в рычаг, между лопаток под взглядом из пустоты потянулась холодная струйка.
В паузе, пока катились по инерции, спутница отпустила рычаг, потянулась к шее и вытащила из-под куртки маленький предмет на шнурке. Половинка дешёвого пластикового брелока — сердечко, когда-то светившееся при нажатии. Пластик исцарапан, батарейка давно села. Стремительным движением коснулась губами.
— С чем ты целуешься? — не сдержал он любопытства.
— Мусор, — брелок исчез под курткой. — Подарок. На последнем нашем свидании. Муж выиграл в тире, в парке аттракционов, за неделю до… до моего попадания сюда. Помогает помнить, как я тоже была человеком.
Налегла на рычаг, лицо снова ожесточилось, но в уголке века предательски мелькнула влага.
Вскоре наткнулись на преграду — искусственный завал. Лина одним ловким движением направила тележку по обходному пути. Путь вывел их к небольшой баррикаде, её устроили засадой на всех путях старой ветки. Четверо фигур, вооружённых копьями и щитами, загородили им путь. Баррикаду собрали из всякого мусора: старые двери, куски арматуры, мешки с песком, остов ржавого торгового автомата. В щелях между мешками торчал запрятанный хлам: стопки пожелтевших газет, пластиковые крышки, пучки проводов. Местные жители ничего не выбрасывали. В мире, где заводы остановились, любой кусок пластика — ресурс. На кольях, торчащих наружу, висели пустые консервные банки — простейшая сигнализация. За укреплением слабый отсвет костра колыхал воздух и тянуло химическим дымком — жгли пропитанные шпалы. Андрей приготовился к схватке, но Лина вскинула ладонь.
— Привет, Рыжая, — обратилась она к женщине с огненно-рыжими, спутанными волосами, стоявшей впереди. — Проход свободен?
Рыжая сначала изучила мужчину, и только потом переключила внимание на его спутницу.
— Какие гости! — сделала успокаивающий жест и самодельные арбалеты опустились. — Для тебя всегда открыт, конечно! Какие новости? Давай, давай, заходи. У нас горячий чай из местных трав.
При слове «чай» у одного из стражников судорожно дернулся кадык. Наверняка здесь и пустой кипяток был роскошью. Люди выглядели измождённо: тёмные веки, кожа пергаментная. Но арбалет ухожен, смазан и блестит при свете.
Та покачала головой.
— Нет времени, Рыжая. Ищем человека. Нужен тот, кто сможет вытащить данные со старого носителя.
Рыжая недоумённо нахмурилась, но воздержалась от уговоров.
— Вытащить? Откуда? Ну, насильно не держим. Но, ты знаешь, где нас найти. И для тебя всегда есть место. Твой новый? — в голосе заиграло искреннее любопытство.
Мужчина поёжился. Так спрашивают не о друзьях, а о диковинных трофеях. Голос в ответе собрал больше льда, чем вершины Памира.
— Попутчик. Не здешний.
Рыжая понимающе хмыкнула, но уточнять не стала. Зато спросила казённым голосом:
— Фонарь из запасов? Или выменяла где?
Лина молча отстегнула фонарь от дрезины и протянула Рыжей. Та пощёлкала выключателем, ослепилась мощным лучом, и довольно присвистнула.
— Хорошая штука, — Рыжая покрутила фонарь. — Светит сильнее патрульного. Проходите. На вот, — бросила старый налобный фонарь на растянутой резинке. — С таким прожектором вы — ходячая мишень. А мой — в самый раз.
В баррикаде оперативно расчистили проезд.
Немного ошарашенный странным приёмом, Андрей спросил, когда они оставили дозор позади:
— Почему они так с тобой дружелюбны?
Проводница отмахнулась.
— Я тут давно. Меня очень многие знают. Не все здесь, кто предлагает помощь, друзья. Если Рыжая сочтет тебя ценным объектом, то продаст Крысам быстрее, чем успеешь оглянуться. Дружба дружбой, а выживание врозь.
Поехали дальше. Несмотря на боль, беглецу стало заметно лучше. Наставница оказалась права — её советы по движению и дыханию действительно помогали. С ним не просто проводник, ему повезло связаться с одним из экспертов по этому кошмару.
Рельсы пели заунывную песню. Иногда колеса подскакивали на стыках, и каждый подскок отдавался в позвоночнике. Тьма вокруг ожила и наполнилась обитателями. Пару раз в боковых ответвлениях мелькали зелёные огоньки — крысы провожали голодным интересом. Сверху упала капля чего-то едкого, прожегшая дырочку на рукаве куртки. Подземный мир готов убить не только охотниками.
C непривычки заболели мышцы, хотя качка рычага не требовала особенных усилий. Через полчаса монотонной езды добрались до другой заставы. Люди отличались от оборванцев на первой заставе. Одинаковые куртки из прочной ткани, наколенники с торчащими рукоятками ножей. У двоих огнестрел — старые, потёртые, но вполне смертоносные обрезы. Разношёрстная, но опасная толпа: потёртая кожа, броня из шин, угрюмая мрачность, зырканье исподлобья.
Но главное отличие — свет. Над входом в убежище светила не чадящая плошка, а настоящая, хоть и тусклая, электрическая лампа в проволочном абажуре. Мигала, жужжала, но давала относительно ровный жёлтый свет. Символ убожества в прошлой жизни среди вечной тьмы сиял царской короной. Здесь был генератор и, главное, топливо для него. Пахло жареным мясом — пустой желудок скрутило спазмами. И снова, когда женщина вышла в лучи фонарей, оружие опустилось.
— Лина? — донёсся басистый голос из толпы, и на свет вышел обросший мужчина с татуировкой на предплечье. — Я уж боялся, тебя давно сожрали Хищники! Заходи! Тебе всегда рады. У нас места полно, и паёк всегда найдется.
— Привет, Жиэн, — бесстрастно отозвалась та. — Ты говорил, я всегда могу обратиться. Моему другу нужна помощь.
Друг чуть не попятился от бесцеремонного внимания здоровяка.
— Ему помочь? — в голосе прозвучал не вопрос, а утверждение. — Повезло тебе, парень, с Линой идешь. Таких здесь по пальцам пересчитать. Она не просто выживает.
Голос не скрывал зависти, неожиданно задевшей за живое. Не он один оценил её взглядом постороннего мужчины. Тонкие черты и динамику, далёкую от лоска офисных красоток прошлого.
— Мы ищем того, кто сможет работать с данными, — проигнорировала замечание подземная жительница. — Со старого устройства.
Жиэн поднял глаза в потолок, поскрёб в подбородке.
— Со старыми данными? Большая редкость. На Полянке можно спросить. Там, у книжников. Попробуйте у них вызнать. У Архивариуса, например. Я отправлю запрос, если канал жив — в последнее время там сплошные помехи.
— Покажешь?
Жиэн не ожидал такой просьбы и перевёл удивлённый взгляд на Лину. Та кивнула. Жиэн пожал плечами и мотнул головой, приглашая за собой.
Cвернув пару раз в закутки, оказались у вмурованной в стену ниши — старую стойку экстренной связи «SOS-box» переделали в полноценный узел. Её запитали от силовой линии освещения через самодельный понижающий трансформатор, гудящий в углу рассерженным насекомым. На вырезанной из корпуса панели мигал индикатор «Emergency only», внутри кипел обмен пакетами.
— Вот, — сказал Жиэн. — Любуйся. Флапает каждые пять минут, а то и чаще.
Шагнул к дисплею, вглядываясь в структуру затухающего сигнала.
— Тут не помехи. У вас дуплекс не сходится. Проблема на той стороне, в коммутаторе. Если я буду у их стойки, я смогу восстановить таблицу маршрутов вручную.
Жиэн снова пожал плечами, очевидно не понимая, о чём речь.
Полянка.
Невнятное направление, но всё же план. Поблагодарили и, отказавшись от предложения отдохнуть, продолжили путь. Мужчина мерно работал рычагом. Монотонное движение заглушало боль.
Впереди путь разветвлялся. Оба пути — чёрные зевы, ведущие в никуда. Он инстинктивно выбрал бы правый, более широкий и сухой, но проводница, даже не замедлив хода, направила влево.
Справа проплыл перечеркнутый круг, нарисованный мелом. Или не мелом, мел не фосфоресцирует. Грибок или специальная краска. Значение непонятно. Опасность радиации? Газа? Даже не увидел, пока не проехали рядом. Слепой котёнок, выкинутый на автостраду. Без проводницы, читающей темноту раскрытой книгой, давно оказался бы в ловушке, свернул не туда или вдохнул ядовитый выхлоп.
Его прошлые знания здесь — просто никчемный балласт, накопления в валюте несуществующей страны. Его логика не поможет там, где правят бал инстинкты и приметы. Сложнейшее программное обеспечение не способно запустить себя на несовместимом железе. А Лина — нативная операционка, которая не анализирует тьму, а сроднена с ней.
Рядом с ним находилась женщина, знающая подземный лабиринт лучше, чем программист — свой код. И становилось всё яснее, без неё он — труп.
Глава 11
На уклоне удалось разогнаться километров до двадцати в час, и старый металл не выдержал. Привод заклинило с жутким скрежетом. Колеса заблокировались, и дрезина пошла по рельсам юзом. Из-под металла полыхнул сноп ярких искр, на миг осветивших вспышкой всё вокруг.
Инерция швырнула на рычаг, выбивая воздух из лёгких. Когда звук стих, пахнуло раскалённым железом.
Уже привычно накинул весь вес — бесполезно. Вал от перегрева и удара приварился к втулке намертво. Вытер ладони о штаны. На ткани остались чёрные полосы. Привод остывал, щёлкая металлом. Пришлось бросить транспорт и идти пешком
— Тут недалеко, но Хищники шастают регулярно, — объяснила проводница прерывистым от скорого шага голосом. — Но Книжников не трогают. Книжники — легальные жители, с рейтингом. А вот посетители — их законная добыча. Будь осторожен.
Андрей поправил лямку тяжёлого вещмешка. Интендант в Коммуне швырнул тюк перед выходом. Брезент пах затхлостью и засохшей кровью. Наследство очередного покойника.
— Книжники — обычные жители? — спросил он, не сбавляя темпа.
— Да. — гибкий силуэт легко перемахнул через маслянистую лужу. — Их игнорируют, пока не нарушают правил. Жертвуют рейтингом для спуска сюда — каждое спецразрешение стоит пятьдесят баллов. За каждое нарушение — сотня. Им очень легко упасть ниже минимума. Жиэн тоже из них. У него рейтинг был выше шести тысяч — ещё чуть-чуть и попал бы в элиту. Но спустил все баллы, скупая словари мёртвых языков. И не рассчитал, уронил РБЛ ниже нуля. Жиэн — не имя, аббревиатура. Ему перевели код в G_N, минуя промежуточные шаги. Стёрли бы, но он успел убежать в катакомбы. А знаешь, как его раньше звали? Вартан с верхов.
Имя произнесено с особым значением. Видимо, история Вартана переросла в легенду.
Оттягивать признание дальше не имело смысла.
— Лина, я должен тебе рассказать правду. Я не местный. Совсем… не местный. Я из прошлого. Ещё утром я был в 2016 году. А потом попал сюда.
Проводница даже не сбилась с шага, только чуть сместила винтовку на плече.
— Поэтому Хищник не смог просканировать… тебя нет в базах.
Разговор оборвал инфразвуковой удар. Пришёл не в уши, а через диафрагму, ощущением давления от импульса сканера, прощупывающего пространство. Пыль на шпалах дрогнула и потекла ручейками.
— За колонну! — маленькая, но сильная рука потянула к земле.
Едва успели упасть на пол, как из-за поворота вырвалась приземистая машина. Два луча выхватывали каждую трещину. Вибрация нарастала, резонанс становился всё заметнее. Сканер на краткий миг завис прямо на их колонне, затем побежал дальше. Машина пронеслась, завесила в воздухе отчётливый запах разогретого металла.
— Ушли, — прошептала спутница, выдыхая. — Проклятые гончие.
Он с трудом отклеился от пола. Слюна высохла, язык залип во рту. Спутница уже стояла на ногах, проверяя сектор.
Вдалеке забрезжил ровный свет, и путники вышли на станцию Полянка — чистое, освещённое пространство. Десятки людей заняли её отдельными зонами, создав импровизированный блошиный рынок. Сидели прямо на полу, разложив на тряпках жалкие сокровища: обломки микросхем, мутные ампулы с биодобавками, мотки изоленты. Продавец поднял три пальца, покупатель в ответ швырнул на тряпку горсть гильз. Сделка состоялась.
У крайней стойки сидел старик в жилете из разномастных патч-кордов. Паял разобранный планшет, не поднимая головы, не оторвался, даже когда к нему подошли вплотную.
— От Жиэна? — спросил, не отрываясь от дела. — Я Архивариус.
— Связь легла? — Андрей сразу перешёл к делу. — Мы можем помочь, если проблемы.
Архивариус не отреагировал. Ожесточённо тыкал стилусом в экран планшета, не получая реакции.
— Проблемы? Алгоритм просто спятил. Объявляет архивы вирусами и вычищает ячейки быстрее, чем мы их скидываем. Вчера обрушил основной маршрутизатор, и мы теперь отрезаны от нижних уровней. А базы адресов нет и никто не помнит настроечных команд. Хищники шныряют каждые пять минут, а мы никого не можем предупредить.
Что за маршрутизатор? — Андрей с трудом стащил с плеч лямки вещмешка. — Где он? Я могу посмотреть.
— Остынь, — осадил старик. — Маршрутизатор — не тостер, парень. Там Cisco 9300L, хотя тебе это вряд ли что-то скажет.
— Каталист? Вы серьёзно? Архитектуру сети с прошлого века не меняли?
— Зачем менять работающую вещь? — буркнул Архивариус. — Новые чипы производить разучились, а старые работают вечно, если лишний раз не трогать. Любое обновление может обрушить прошивку, и откуда её потом доставать?
— На диск сбросить, — пожал плечами гость, — зачем-то же вам нужен этот мусор? — он кивнул на стопку жёстких дисков в углу. — Размагниченные же наверняка.
— Не мусор, а память, — огрызнулся Архивариус. — В Сети информация жидкая: сегодня Ядро обновит хеши, и история изменится. А записанное на магнитных блинах одинаково и через сто лет. И удалённо нельзя стереть. Мы покупаем диски у Крыс и мы — единственные, кто помнит мир до заморозки.
— Получается, дыры в безопасности тоже заморожены, — догадка заставила криво усмехнуться. — Мой Kali Linux знает все уязвимости наизусть. Для местной сети я тот, кто обладает ключами от всех дверей. Ну, если никто не поменял замки.
— Покажи, — жёстким тоном добавила Лина. — А потом мы уйдем, и ты будешь сидеть дальше со своими кирпичами. Я ручаюсь за него. Жиэн ведь сообщил тебе, кто я?
Архивариус поколебался и махнул рукой, приглашая следовать за ним.
— Хорошо. Идём. Но если ты мне поломаешь роутер — пеняй на себя. Починишь — отблагодарю. А то без сети вообще защита не работает.
Он провёл гостей в душное помещение. Индикаторы громоздкого шкафа с кабелями мигали жёлтым.
— Таблица маршрутизации слетела. OSPF к соседям не достукивается, сеть разорвана. Мне нужен доступ к консоли, я подниму интерфейсы вручную.
Архивариус поморщился, переваривая услышанное. Слова знакомые, но смысл ускользал.
— Консоль? Осепеэф? О чем ты?
— Неважно, — сорвал панель, подцепив ногтями. — Тут не нейросети. Под интерфейсом — стек TCP/IP столетней давности. У вас тут заморозили доступные технологии.
Пришлец изучал консольный вывод, глаза округлялись всё сильнее.
— Номер версии. Невероятно! Это же обычный линукс, обвешанный костылями и с переименованными системными демонами. Даже не коммерческий юникс. Я на этих формулах ещё в институте лабы сдавал. Конечно, я тут каждый баг знаю.
Вентиляционная решётка над их головами вылетела вместе с кусками бетона. Грохот ударил по ушам, с потолка посыпалась штукатурка и мелкая крошка, тотчас забившая клавиатуру.
— Контакт! — заорал Архивариус. — Держите периметр!
Но было поздно. Из пролома посыпались фигуры. Не стреляли — нечем, бежали с заточками и обрезками труб.
Первая волна смяла охрану Книжников. Охранник рухнул, захлебываясь кровью — арматурный прут пробил шею.
На их счастье, они никого не заинтересовали. Нападающие пробегали сквозь помещение и неслись на станцию, отбирать ценности.
Грохот в замкнутом помещении оглушал. Выстрелы выхватывали светом перекошенные лица. Молодой парень протиснулся через них, упал на колено, вскинул винтовку, и посылал пулю за пулей в направлении выбирающихся из вентиляции врагов. Поток захлебнулся, но зато началась ответная пальба.
Андрей высунулся, чтобы поправить кабель, и тут же получил удар искрой в лицо — пуля раскрошила угол стойки и выбила сноп искр в сантиметре от головы. Вскрикнул, упал на пол, скуля от страха. Сжался, закрывая голову. Хотелось исчезнуть.
Архивариус поднял за шкирку, как котёнка.
— Правь скорее, — заорал он в лицо. — Защиту поднимай!
Вокруг летели искры и брызги крови, но пальцы легли на клавиши, на экране загорелась строка ввода, и происходящее схлопнулось до размеров монитора. Выплыла знакомая подсказка и неожиданно пришло успокоение. Бой за спиной отодвинулся, становясь чем-то далеким и неважным. В неразберихе боя терминал оставался единственной вещью, работающей по правилам.
— Не вставай, идиот! — Лина пинком загнала глубже за стойку.
Молодой защитник упал рядом — пуля угодила в горло. Парень хрипел, суча ногами, подёрнутым дымкой взором фокусируясь на лице сисадмина в последнем гаснущем усилии. Близость смерти парализовала. Если бы парень не закрыл, пуля угодила бы прямо в него. Затошнило, руки заходили ходуном.
Трижды ронял коннектор, прежде чем попасть в паз.
— Я их не удержу! — Крик Лины потонул в грохоте.
Рванул крышку консоли. Пусто. Порт вырван «с мясом», торчат только разноцветные жилы витой пары.
— Черт! — крикнул он. — Провода нет! Мне нужно время — на скрутку!
— У тебя его нет! — Архивариус опрокинул серверный шкаф, создавая баррикаду. — Прорыв по левому флангу!
Андрей упал на колени перед стойкой. Вытащил провод, разодрал, впился зубами, сдёрнул изоляцию с обрывка витой пары. Нужны всего три жилы: передача, прием, земля. Пальцы скользили от пота. Тонкие нитки не хотели цепляться петлями для примитивного патчкорда. Контакты в гнезде глубокие, не достать. Расцепил найденную на полу пластиковую стяжку и, используя обломки клиньями, с силой втрамбовал оголенные жилы в нужные пазы разъема. TX, RX, Земля. Колхоз, гарантированное увольнение в его отделе, а здесь — единственный выход.
Слева прозвенел удар о металл. Крыса с ржавым мачете проскочил сквозь заслон и снова завис в замахе. Старик коротким тычком всадил угол тяжёлого блока питания врагу в переносицу. Тот обмяк и рухнул на пол.
— Заразы! — прохрипел Архивариус, отшвыривая окровавленный блок. — Всё лезут и лезут! Чини скорее, без сети не включается защита.
Зелёный курсор завис на чёрном фоне.
Экран терминала моргнул и выплюнул командную строку.
Router> enable
Пароля нет. Книжники запустили write erase для сброса ошибки, но не смогли настроить маршрутизацию заново. Сложный узел связи превратили в кирпич.
Скорчившись, вбил interface gi0/1, no shutdown и ip address dhcp. Если DHCP ещё транслирует настройки на нижние сегменты.
— Давай, детка, стяни конфиг, — шептал он. Если порт посмотрит в сторону работающего сектора, роутер сам получит адрес и путь к TFTP-серверу верхнего уровня для восстановления.
Таблица маршрутизации пустая, но соседние узлы наверняка все ещё рассылали Hello-пакеты. Прописать всё вручную нереально. Нужно открыть шлюзы.
Router# conf t
Router (config)# interface range gi0/0 — 1
Router (config-if-range)# no shutdown
Административно выключенные интерфейсы. Базовая ошибка, не фатальный сбой.
router ospf 1 network 0.0.0.0 255.255.255.255 area 0.
Запустил процесс поиска соседей по всем интерфейсам. Если сеть за шлюзом жива, роутер должен синхронизировать LSDB с соседями. Секунда ожидания — и на экран посыпались строки загрузки маршрутов. Соседний сегмент сети заливал в роутер карту всей округи.
В плечо толкнули. Пошатнулся.
— Не спи! — Лина пихнула, перезаряжая магазин. — Они перерезали питание света, сейчас тут будет темно, как в заднице у Хищника!
Вокруг свистел свинец, кроша стёкла. Выпрыгнул враг — длинный, узколицый. В руке мелькнула зазубренная труба.
Архивариус снял одиночным в грудь. Тело рухнуло на стойку, ботинок ударил по пальцам, едва опять не разорвав контакт.
Пнули в бедро, отталкивая от линии атаки. Гильза от выстрела ударила в щеку, обжигая кожу. Не дёрнулся, помог парализовавший страх. Три медные жилы. TX. RX. Земля. Жилы не попадали в пазы.
— Прикройте! — заорал он, звон в ушах перекрывал собственный голос.
Освещение вырубилось. Сохранилось только мерцание мониторов и вспышки выстрелов. Кто-то прыгнул на Лину, встретила ударом приклада в челюсть, добавила выстрел в упор. Очередная гильза отскочила на шею. Зашипел, дёрнул плечом, стряхивая жгучий металл, но от клавиатуры не оторвался.
Router (config)# interface range gi0/0-1
— Берегись! — крик Лины сорвался на визг.
Прямо перед ним выросла фигура с монтировкой. Тень нависла над ним. Руку с проводов убирать нельзя — контакт опять прервётся.
Он открыт. Абсолютно беззащитен.
Архивариус вклинился между ними, принимая удар на блок. Предплечье выгнулось под неестественным углом. Старик хрипнул, прижимая перебитую кисть к животу, но на ногах устоял.
— Жми! — прошипел он.
Андрей вдавил мизинцем клавишу ввода.
На экране терминала посыпались ошибки:
%OSPF-5-ADJCHG: Process 1, Nbr 10.0.0.1 Down: Dead timer expired.
%OSPF-5-ADJCHG: Process 1, Nbr 10.0.0.1 on GigabitEthernet0/ 1 from FULL to DOWN Neighbor Down: Dead timer expired
Линк на скрутке ежесекундно терял пакеты. Сисадмин непрестанно матерился, пытаясь удержать жилы. Нужно всего одно окно стабильности хотя бы в десять секунд, таблица маршрутизации не успевает провести синхронизацию на такой скорости.
Строки кода замельтешили на экране. Железо оживало. Вентиляторы вышли на форсаж, заглушая стоны раненых. Зеленые диоды на патч-панели вспыхнули не по очереди, а все разом.
— Контакт! — заорал он, не отрываясь от диода на порту Gi0/0, мигнувшим оранжевым, а затем ровным зелёным светом. — Поднялся!
Рванулся к клавиатуре терминала. Физическая связь восстановлена — кабель жив. Связь есть — осталось объяснить маршрутизатору, что рядом есть другие узлы.
Router# show ip ospf neighbor
Экран моргнул. В пустом списке появилась первая строчка. Состояние INIT, 2WAY, FULL.
— Пошла синхронизация! — заорал Андрей. — Сеть жива! Пошла грузить маршруты!
Очередной тип выскочил, застыл с занесенной монтировкой, включившиеся прожекторы аварийного освещения разом ослепили всех в комнате. Через секунду его грудь превратилась в решето.
Турели под потолком дёрнулись, калибруясь. Сервоприводы взвыли, стволы синхронно опустились. Управляющий алгоритм зачистки сектора. Коридор наполнил сухой перестук пуль и крики нападающих сменились воплями, а затем хрипами. Пальба стихла. Сполз по стойке на пол, вытирая пот. Кулаки не разжимались.
Архивариус, придерживая локоть здоровой ладонью, с трудом вытащил планшет. Потоки данных текли без сбоев.
— Работает… — изумился старик.
— Линк, — еле выговорил трясущимися губами. — Поднялся.
Вытащил разбитый телефон. Чуть не выронил — руки всё ещё ходили ходуном.
— Ваш должок. Память внутри вроде цела, но контроллер питания сдох. Мне нужен паяльный фен и программатор — выпаять чип и считать образ напрямую.
Архивариус повертел устройство, подверг тщательному осмотру со всех сторон, только что не обнюхал.
— Очень необычный коммуникатор, я никогда не видел таких. Нет, против такого мы бессильны. Наша техника для поддержания существующего, не для таких артефактов. Мы не сможет включить.
— Да зачем включать? Внутри контейнер. На чипе памяти лежит ISO-образ. Выпаяй чип, считай дампом, и найди там файл. Потом можешь выкинуть трубку, мне плевать.
Архивариус поджал губы, и вернул телефон. Правая кисть начала отекать, мелко дрожала, но, кажется, он решил не замечать висящую вдоль тела конечность. Лицо блестело от пота.
— Ты говоришь на незнакомом языке. — сипло выдавил он. — Мы такого не умеем. Мы не Исток. Идите в глубину.
— Метро-2? — Лина щелкнула предохранителем, проверяя оружие. — Байка для новичков?
— Всё подземелье кормится байками, — отрезал старик. — А Метро-2 — вполне реальный уровень, куда нет хода без пароля.
— И там? — спросил Андрей.
Архивариус пожал плечами.
— Я не знаю. Внутрь я никогда не попадал — туда не пускают всех подряд. Но на входе переговорное устройство. Если назовете код, позволят задать один вопрос. Путь к станции укажу. Но помни — то, с чем вы собираетесь бороться, может не укладываться в обычную логику.
— В смысле?
— Там призраки. — Архивариус поморщился, прижимая поврежденную руку к груди. Речь отрывиста от боли. — Давно было. Работал инженером верхних уровней. Сводил баланс. Жилые здания, заводы, серверные — всё сходилось. Везде тянутся толстенные силовые кабели, трубы охлаждения… везде, по всем уровням. Кроме того на верхнем этаже. Сектор «Ядро-01».
— И там?..
— Ничего. Абсолютный ноль. В плане указывалась нагрузка на перекрытия. Десятки тонн оборудования. А для «Ядра-01» — прочерк. И питание не подведено.
— Невозможно. Сервер без питания — кирпич. Может, беспроводная передача? Скрытая проводка?
— Или призрак, — пожал здоровым плечом Архивариус. Его лицо приняло отсутствующее выражение. — Загадка, не стёртая Очищением, ведь стирать нечего. Сообрази сам: можно ли управлять всем, не имея ничего?
Подземная воительница нетерпеливо переступила с ноги на ногу и проверила затвор трофейной винтовки.
— Призраки или нет, если можно попасть внутрь — значит, попадём. Если надо дёрнуть рубильник, найдём и дёрнем. Ты дашь координаты?
— В левом кармане, — Архивариус указал движением подбородка на жилет. — Сама возьми.
Лина вытащила смятый листок.
— Выдвигаемся, — скомандовала она, проигнорировала разгром за спиной, и первой шагнула в темноту. Андрей задержался на секунду, машинально проверяя индикаторы роутера, и двинулся следом.
Глава 12
Позади, в торговом зале, ещё не осела пыль после перестрелки. Пахло палёным пластиком, сыпали искрами сломанные электроприводы. Торговые ряды напоминали разворошённый муравейник: повсюду валялись перевёрнутые лотки, хрустели под ногами рассыпанные микросхемы. Натужный гул аварийного освещения перемежало взвизгивание генераторов.
Выжившие Книжники деловито устраняли последствия боя. Вот-вот явятся власти с обязательной проверкой того, почему на месте торговли образовались беспорядки. Двое крепких парней волокли тела убитых бандитов к краю платформы, чтобы сбросить их в дренажный желоб. Женщины с утомленными лицами уже сметали гильзы и осколки витрин в кучи, поднимая уцелевшие стеллажи. Торговля должна возобновиться. Беспорядок исчезал с удивительной скоростью, было заметно, что подобная уборка проводилась не впервые.
Их догнал голос. Архивариус спешил к ним, приволакивая ушибленную ногу.
— Постойте. Лина, подойди ко мне. Пожалуйста.
Архивариус нервно щипал подбородок, оттесняя её плечом. Лицо старика блестело от испарины. Не стал рассусоливать тему, выпалил главное подозрение сразу.
— Слишком много знает, — прошипел он, не особенно заботясь о том, слышит ли его спутник. — Твой пришелец.
Боль от сломанной руки, наскоро примотанной к туловищу куском кабеля, явно туманила ему рассудок, но внимание оставалось цепким и жёстким. Так концентрируется тот, кто привык взвешивать чужие жизни на весах общей пользы.
— Взломал маршрутизатор. Так не умеет делать никто. Откуда у мальчишки коды, утраченные ещё до Очищения? Такие сведения запрещены. А если он — агент, засланный окончательно нас рассекретить?
Та покачала головой с выражением непоколебимой уверенности.
— Не агент. Он из другого вре… места. Хищники не смогли его просканировать.
— И откуда у него взялись такие способности? — Архивариус сплюнул под ноги розовую слюну. — В нашем мире нет несканируемых индексов. Если контроль натыкается на пустоту, пустоту перезаписывают. Твой друг — ходячая опасность. И заразит нас всех, если мы не изолируемся раньше, чем сканеры закончат обработку периметра. Я не верю ему. Совершенно не верю.
Андрей взбесился. Он — человек, а его обсуждают вещью при продаже. Двадцать минут назад старик закрыл собой от верной травмы и это было благородно. Но благодарность здесь живёт недолго. Архивариус спас — сисадмин служил полезным инструментом для починки сети. Сейчас, когда сеть работала, а на подходе проверка, снова превратился в улику. Опасную улику, от неё логичнее избавиться.
— Нам не пора? — резко спросил он. — Если мы тут не нужны — пойдём себе дальше.
Архивариус вздрогнул. Мотнул подбородком в сторону дальнего штрека.
— Идите через тот туннель — там есть обход без рельсов, туда не суются Крысы. Запоминайте пароль. Не перепутайте ни буквы, иначе не ручаюсь за вашу безопасность. Код 75. Ай-Икс-двести…
Они шагали по краю освещенного периметра к пограничной зоне между относительной безопасностью и дикими территориями. Шли по перрону, но не успели пройти и десятка шагов. Станция содрогнулась от визга взвывших динамиков. С потолка посыпалась штукатурка, падая на свежие пятна крови. Люди, повинуясь инстинкту, медленно опускались на колени. Никто не бежал.
— Залечь! — крикнула Лина, толкая спутника за ближайшую скамейку.
Аварийные огни вспыхнули по периметру, сменяя мягкий свет. С трех сторон вынырнули машины. Стремительно пронеслись по рельсам, и застыли в разных точках, блокируя выходы. Засияли мощные прожекторы. Из люков на крыши машин вылезли фигуры. Чёрные шлемы, оружие в руках. Заняли позиции.
Архивариус поспешил к своим людям. Книжники на перроне прекратили уборку, настороженно уставились на замершие машины.
С трёх машин соскочило по двое, с разных сторон направились к торговцам. Составили ряд из шестерых, закованных в матово-чёрную броню. Не целились — стволы опущены. Им не требовалось угрожать. Само их появление смотрелось вынесенным приговором. Один, с широкой оранжевой полосой на шлеме, медленно повернул голову, сканируя пространство. Наплечные сервоприводы издали тихое жужжание.
Он зашагал к людям. Шаги уверенные. Оптический передатчик засиял так, что ближайшие Книжники закрылись ладонями.
Усиленный динамиками голос легко перекрыл всю станцию. Не похожий на человеческую речь, искажённый до неузнаваемости. Ультразвук, созданный для вызова резонанса в черепной коробке. От него ломило зубы. Звук проникал под кожу, мышцы сокращались в непроизвольном спазме. Вокруг повисло облако статического электричества, поднимающего волосы дыбом. Голос звучал сразу отовсюду, лишая возможности определить источник.
— Зафиксирована аномальная сетевая активность с использованием запретных команд. Кто последним использовал консоль маршрутизатора? Отвечайте немедленно, иначе будут последствия для всех!
Андрей похолодел, проклиная свою самонадеянность — это же он всех подставил. Ну что ему стоило использовать анонимный доступ? Его действия обрекли всех. Он не смел пошевелиться — малейшее движение их выдаст. Лина вжалась в него, её внимание намертво приковалось к визитёрам.
Голос не выражал гнева. Так звучит заранее записанный скрипт. Диагноз, зачитанный пациенту перед эвтаназией. В голосе не предполагалось места переговорам, мольбам или жалости. Голая логика: «0» — ты существуешь, «1» — ты ошибка. Может быть, наоборот. Но сейчас они точно все — ошибки. Динамики фонили статическим треском, и громкий треск подавлял волю лучше оружия.
Никто не побежал. Книжники, пережившие налёт бандитов, вели себя покорнее кукол. Люди опускались на колени, складывая запястья за головы. Утыкались лицами в пол — рефлекс, выработанный поколениями: не смотри, не двигайся, и тебя не сотрут.
И тут Архивариус на пару секунд зафиксировал взгляд на Лине, транслировал безмолвное сообщение, а затем бледный, но с прямой спиной, вышел вплотную к тёмным фигурам.
— Я, — произнес подчёркнуто твёрдо. — Хотел исполнить свой долг поддержки знаний, и исполнял. Старые команды не сработали. Я хотел восстановить нашу связь. Но глаза не те. Старость. Я ошибся в команде греп ви 75. Для копирования tmp/221015. Не только в в зелёных папках хранится Ай-икс-214.
Сисадмин мгновенно считал скрытый смысл послания.
Хищник с ярким лучом направился к Архивариусу, бубня на ходу:
— Запретные команды — прямое посягательство на стабильность. Вы подлежите устранению.
— Я знаю, — спокойно ответил Архивариус. — Но мой долг превыше всего.
Старик не отвёл глаз. Сканеры уже зафиксировали факт взлома и идентификатор консоли. Виновного должны найти прямо сейчас. Если не обнаружат, начнут глубокую проверку всех присутствующих. И тогда пропадёт всё, вскроют все тайники.
Беспроводной сканер коротко пискнул над запястьем старика, считывая биометрический ID.
— Подтверждено. Личный идентификатор зафиксирован в логах сбоя, — автоматический голос констатировал факт.
Архивариус не лгал, лишь предоставлял удобную правду. Все любят порядок: сбой — виновный. Дело закрыто. Старик хладнокровно обменял жизнь на безопасность уцелевшего архива. Сделка.
Даже выпрямившись во весь рост, он был намного ниже Хищника, но во взгляде снизу вверх не было страха. Он всё рассчитал до конца — жертва фигуры лучше сдачи партии. Память человечества, запертая в папках, для него оказалась важнее собственной плоти. Религия данных — единственная вера, сохранная в мире, где доступ к информации граничил со смертным приговором.
Признание было принято. Простое и дерзкое объяснение звучало логично и правдиво. Инцидент исчерпан: источник сбоя найден и локализован.
Два Хищника безжалостно схватили старика. Хлёстко лязгнул люк, запер арестованного в машине.
— Станция подлежит полной очистке! — проревел голос. — 200 секунд до запуска!
В тот же миг на перроне началась паника. Книжники метались, сметали вещи с прилавков в баулы.
— Вставай! Бежим! — Лина схватила за локоть. — Они сейчас тут всё взорвут!
Но Андрей не слушал. Слова Архивариуса, последние слова — все сложилось в единую картину. Оттолкнув Лину, рванулся к помещению с техникой.
— Идиот! Куда ты?! — кричала Лина, удерживая за рукав.
Он вырвался и со всех ног помчался в душную комнату с оборудованием. Вбежал, чуть не грохнувшись на пол. Подключенный терминал все ещё приглашающе мигал курсором. Подскочил, набрал команду:
# grep v75
На экран посыпались строки записей. Слишком много — не прочесть.
# history
Терминал неохотно выплюнул лог последних операций.
Выругался. Их тоже сотни. В основном обычные ls, cd, rm.
Искать сам файл глупо — Архивариус не дурак хранить такие данные в сети, где любой сканер сотрёт их за наносекунду. Упомянул tmp/221015. По названию, директория временных файлов. Где она? Вбил команду поиска.
# find tmp\221015
Папка пустая.
# ls -a
Есть скрытый файл. Тоже пустой.
# ls -la
Ага, уже лучше — метка похожа на адрес. Метка указана в свойствах: >> LOCATION: RACK_04_SEC_B. Старый лис оказался подлинным гением безопасности — схема разделённого секрета. Цифра — первая половина. Вторая существует только на бумаге. И никакой удалённый взлом не соберёт целиком, как бы досконально его ни продумывали. Старая школа — никогда не доверять ключевые данные компьютерам.
— Хитро, — с уважением пробормотал исследователь.- Открытый ключ в реале.
Кинулся к стеллажу. Четвертая полка. Папка должна быть зелёной. Лихорадочно тряс папки, перелистывал пожелтевшие страницы, рвал и потрошил, к вящему изумлению Лины. На пол летели ведомости выдачи пайков, технические паспорта на вентиляторы, чьи-то дневники. Рвал бумагу, хранившуюся десятилетиями, как вандал, уничтожающий историю. Среди бюрократической макулатуры, пахнущей тленом, где-то лежит ключ к спасению. Лихорадочно раздирал переплёты, и листы бумаги звонко лопались в наступившем отсутствии звуков опустевшей станции. Глаза лихорадочно сканировали строки — времени на раздумья не оставалось, секунды таяли скорее, чем успевал переворачивать листы
— Бежим, — крикнула Лина. — Скорей!
Из разорванной папки выскользнул листок с короткой рукописной строкой символов на нём. Подхватил на лету. На бумаге значилось: ! SEC-0_ROOT-PASS: _zZ+Ar1. Концовка последовательности, выкрикнутой стариком. Вот полный код. Без этой бумажки никакое чудо не открыло бы им доступ.
— Успели! — крикнул он. — Бежим!
Но было поздно. Медленно, точно в невесомости, звёздной ночью разлетелись осколки ламп. По бетону поползла паутина трещин, разевая чёрный рот по центру. А потом пришёл хлопок. Порыв ветра швырнул людей вместе с сорванной со стен обшивкой. Гравитация на долю секунды исчезла. Потолок обернулся полом, пол — дыбом встающей палубой тонущего корабля.
Позади раздался глухой, всасывающий хлопок. Не обычный взрыв. Термобарический заряд объемного действия — вакуумная бомба в миниатюре. Огненное облако, распыленное в замкнутом объеме, вспыхнуло вакуумной печью.
Перепад давления толкнул в спину и сбил с ног. Проехался лицом по гравию, чувствуя сдирание кожи до мяса. От грохота звенели барабанные перепонки. Луч налобного фонаря Лины плясал в облаках цементной пыли.
— В коллектор! — заорала она, перекрикивая рёв пламени. — Сейчас пойдет обратная волна!
Рвануло назад чудовищной тягой воздуха, заполняющего выгоревшую пустоту. Успел на лету схватить скобу, удерживая другой рукой Лину за пояс. Мимо них горизонтальными столбами полетел мусор. Жар пронёсся над головами, опалив волосы, но они свалились в дренажный люк за секунду до расширения перегретых газов.
Их спасло только то, что подземная воительница успела столкнуть его в глубокий кабельный канал и прыгнула следом. Волна жара прошла сверху, выжигая кислород, но бетонные бока канала приняли удар на себя.
С трудом поднялись на ноги, опираясь друг на друга. Спутница тут же зарычала и ударила наотмашь по лицу.
— Ты совсем спятил? Ты чуть не сдох за бумажку! Больше никогда так… — голос сорвался на яростный крик с отчётливым тоном страха.
— Не из-за бумажки, — перебил он, тяжело дыша. — Из-за надписи на ней. Старая школа.
Сплюнул грязь, набившуюся в рот.
— Ключ зашифрован. Одна часть в голове старика. Передал нам, пока Хищники слушали, но не слышали. А вторая часть — здесь. Без обеих частей у нас не пароль, а бессмыслица. Мы бы стучались в закрытую дверь до второго пришествия.
Проводница скептически скривилась, но промолчала. Туннель поглотил их. Они шли, поддерживая друг друга. Кровоточили и саднили раны, каждый шаг отдавался болью.
Старый коллектор, тесный и душный, тянулся в бесконечную даль. Жил своей жизнью, чуждой человеку. Шевелились в такт колебаниям воздуха слоистые наросты белесого грибка. Иногда в лучах фонарей мелькали бледные, слепые насекомые размером с ладонь, спешили скрыться в трещинах. Под ногами хлюпала ржавая вода. Шагали в ровном темпе, молчали, экономя дыхание. Беззвучие нарушал звук шагов и шорох курток о бетон.
Андрей чувствовал горящую кожу на лице, в ушах стоял срывающийся крик. Лина ударила не от злости — её трясло от ужаса. И ещё — когда орала на него, размазывая копоть по лицу, в вопле звучало слишком много личного для случайной попутчицы. Она боялась за него. Любезность или… нечто большее?
— Почему ты доверилась ему? — спросил он, когда молчание стало неудобным. — Архивариусу. Он ведь нас чуть не сдал.
— Выиграл нам время, — глухо отозвалась та. — Ясно же было, всё равно найдут лог доступа. Выбрал способ смерти, которая принесёт пользу. Тут так принято.
Опять не нашёлся с ответом. Жестокая арифметика всё ещё не укладывалась у него в голове.
От тележки сохранилось одно искорёженное колесо, одиноко догоравшее на путях. Взрыв не оставил от самоделки ничего целого. Остаток пути прошли по колено в воде, через дренажные каналы, ориентируясь по памяти Лины — до гермозатвора с надписью «Сектор 0».
До места назначения вышло около двух часов пути, и, когда добрались до указанных координат, их встретила вовсе не запертая дверь.
Из ниоткуда возникли двое мужчин в рваной одежде. Крысы. Мелькнула первая мысль — отбиваться. Но уже привыкнув выцеплять детали, сразу заметил нестыковки. Да, на них лохмотья настоящих падальщиков, воняющие гнилью. Но стояли они, не сгорбившись, а в жёсткой, уверенной стойке профессиональных военных. Под слоями рваной мешковины угадывались контуры не ржавых заточек, а короткоствольных автоматов с глушителями, висящих на тактических ремнях. Маскарад. Камуфляж для не желающих узнавания.
Осторожно повертел головой, осмотрелся. Позицию выбрали грамотно: бутылочное горлышко штрека, груды мусора направляли движение цели прямо в перекрёстный сектор обстрела. Будь у Лины реакция мангуста, она не успела бы вскинуть ствол. Гостей взяли в коробочку задолго до обнаружения слежки. Обычные охранники так не делают, только охотники, привыкшие ждать в засаде часами. Любое резкое движение сейчас могло оказаться последним.
И ещё деталь, невозможная для одичавших бродяг. Указательные пальцы вытянуты вдоль скобы. Дикарь бы давно жал на спуск, эти двое — ждали. Контролировали ситуацию, а не реагировали на неё. Выдержка, стоящая дороже оружия.
Проводница сжала кулаки, готовясь к схватке.
— Всё. Конец, — прошипела она. — Мы добрались прямо в ловушку. Архивариус сдал нас.
— Нет, — произнёс Андрей хрипло, но уверенно. Выступил вперёд, открыто встретившись взглядами. — Код 75. Ви-75-ай-икс-214-зет-зет-плюс-Ар1.
Охранник справа чуть опустил ствол, но палец со скобы не убрал.
— Красивый набор букв, — произнес спокойным тоном. — Но недостаточный. Получили от Архивариуса?
— Да, — ответил пришелец. — А ещё дал нам это.
Поднял зажатый листком бумаги. Боец шагнул вперёд, ловким движением выхватил, мазнул по нему лучом тактического фонаря. Секунда на сверку.
— Проходите, друзья, — боец отступил в сторону и открыл взглядам скрытый за грудой обломков люк. — Вы дома.
Часть 3. Между Землей. Глава 13
Виэн подошёл к автомату с напитками. Датчик глухо пискнул, считывая Заговор. Зелёные цифры высветились на дисплее: РБЛ 3141. Доступно всё из более низкого уровня.
В коридоре Тех-Сектора традиционно воняло перегретой изоляцией и хлоркой. Сглотнул противную вязкую слюну. Вентиляция над головой хрипела, безуспешно гоняя горячий воздух по кругу. Жажда здесь — обычное и перманентное состояние.
Ткнул в «Прохладительные напитки».
Экран автомата зарябил, выплюнув две мутные картинки. Квас и Компот. Разница в названии и цвете красителя Е-202. Сами жестянки за мутным стеклом мятые и поцарапанные. Из них уже неоднократно пили, а потом сдавали обратно в переработку. Выбор без выбора, иллюзия разнообразия в мире однотипных продуктов, отличающихся упаковкой.
Завис, выбирая между квасом и компотом, и испытал острый приступ раздражения, вспомнив абсолютно одинаковые привкусы, оба похожие на окисленный металл. Настоящие вкусы никогда не попробует. Такие стартовали от 5000. Интересно, что предлагают тем, у кого больше 9000? Жидкий азот? Или тот самый виски из довоенных архивов?
Выбрал квас. Нажал несколько раз на стёртую кнопку «добавить подсластитель». Датчик вспыхнул бордовым цветом, экран сменил картинку, зарябили крупные буквы. «СОСТОЯНИЕ ИДЕНТИФИЦИРОВАНО: ВЫСОКОЕ ВОЗБУЖДЕНИЕ. ДОБАВОЧНЫЙ САХАР ОТМЕНЁН -» Браслет на запястье коротко дрогнул, мигнул, подтверждая отказ. От бессильной злобы вспыхнули щёки. Абсолютно же бессмысленный мелочный контроль расходов. Ведь экономия направлена не на сахар, на эмоции. Любой всплеск, включая гастрономический позыв — расход ресурса.
Они и мелкую вспышку раздражения, вызванную жаждой, сочли запрещённым возбуждением, зарегистрировав лёгкое повышение пульса. Абсурд. Но именно так и работали датчики, отслеживали физиологические отклики и трактовали их отклонением от нормы, хотя саму норму никто не знал.
Машина зажужжала и зависла. Оператор, не меняясь в лице, с размаху ударил кулаком по пластиковой панели.
«ВРЕДОНОСНЫЕ ДЕЙСТВИЯ. ШТРАФ 10 ЕДИНИЦ».
Ударил ещё раз. Посильнее. Внутри машины хрустнуло. Рейтинг на экране не моргнул. 3141. Личная заморозка.
Сзади раздалось шарканье ног. Очередь напряглась. Люди боялись находиться рядом с нарушителем. Их желание отстраниться очень понятно. Никто не хотел разделить участь оштрафованного, пусть и всего лишь на минус 10 баллов. Если кого-то штрафуют рядом с тобой, могут обратить внимание и на тебя. «Эффект кругов на воде». Спину сверлили взгляды — колючие, испуганные, ненавидящие. Желающие ему либо взять квас, либо исчезнуть, но главное — не привлекать внимания.
Забрал безвкусный напиток. Следующий в очереди смерил взглядом с головы до ног, но выразить недовольство вслух не решился.
Виэн побрёл на рабочее место. Таскать напитки по зданию не разрешалось (понижение на 2 единицы), но подобные вольности контроль обычно не замечал.
Побрёл через гигантский зал, стараясь не поднимать головы. Улей продолжал шуметь. Тысячи людей, сгорбившись над терминалами, шелестели клавишами, создавая иллюзию работы трансформаторной будки. Пробирался к кубиклулавировал позади шеренг одинаковых спин. Бракованная деталь спрячется в отлаженном механизме, и её никогда не найдут. Ряд 40, место 15. Ряд 40, место 16. Старшие смен ходили между рядами, заложив руки за спину. Вылитые надзиратели в паноптикуме. Старался идти в слепых зонах, выбирал маршрут, где меньше камер. Сгорбленная спина, упёртый в грудь подбородок — мимикрия серости. Если ты мебель, тебя не замечают.
На столе были разложены бумаги из ящика. Их внимательно изучал Степан, бывший сосед по кубиклу, дождавшийся повышения. На груди блеснул новый значок, полоска металла, на ней большие буквы «СВК „. Служба внутреннего контроля.
Значок — не пустой кусок металла. Встроенный микрорегистратор, пишущий круглосуточное видео. Степан изменился. Исчезла вечная сутулость. Появилась уверенная осанка, а форма без единой складки, сшитая из более качественной синтетики. От него даже пахло иначе — антистатиком и мятным концентратом. Стоял, опираясь бедром о стол, всем видом демонстрируя, кто здесь хозяин территории.
— Что это тут написано? — контролёр брезгливо подцепил пальцем край исписанного листа. Оператор наклонил голову, вглядываясь, и похолодел — на листке был записан полный код устройства беглеца. Набор цифр, переписанный из лога ошибки.
— Мусор, — пожал плечами и глотнул кваса, закрывая банкой лицо. — Дрон выдал ошибку в полетном задании, абракадабра в ответе. Я выписал и сравнивал с реестром сбоев, но там глухо.
Проверяющий препарировал взглядом лицо оператора, выискивал минимальные признаки реакции, подходящей под неуверенность или сомнение. Не нашёл. Смял бумажку, отправляя в утилизатор.
Комок исчез в чёрной щели стола. Виэн едва сдержал облегчённый выдох, замаскировал очередным глотком мерзкого пойла. Для контролёра всё происходящее белым шумом. Для него, управленца новой формации, значение имело только показанное на экране. Аналоговые записи — мусор, пережиток прошлого, заслуживающий утилизации. К тому же, нарушение порядка «чистого стола» — минус три балла. Вся СВК искала крамолу в словах и мимике, пропуская угрозы в замысле.Бюрократия выигрывает у бдительности всухую. Если бумажка не имеет грифа «Секретно», значит, безопасна.
Неважно, это только к лучшему. Все равно номер запомнен наизусть. Десятки раз набирал, но стирал, не отправив. Искушение мучило невыносимо. Отправить ещё сообщение нетрудно, но требовалось активировать устройство. Риск, огромный риск. Активация откроет беглеца для всей сети. И для контроля, и для Хищников.
Степан посторонился, пропуская на рабочее место, но не уходил.
— Виэн! — Лицо начальства пошло красными пятнами. РБЛ 4976 давил на плечи ответственностью новой должности. — Что за цирк у автомата? Мне дошёл сигнал о вандализме в моём секторе.
Уже донесли, оперативно работают.
Новоявленный контроллёр наклонил умную голову, приблизил губы к уху Виэна, перешёл голосом на шипящий полушёпот взбешённого руководства.
— Любой инцидент в секторе портит мою статистику. Я только сейчас вышел на повышение. Я не позволю твоим вечным странностям стать пятном на моей характеристике. Мы сидели рядом пять лет, но если ты потянешь меня вниз — я тебя утоплю.
Тот снова пожал плечами.
— Обычный эксперимент. Мой РБЛ не реагировал, а автомат завис. Вот собирался проверить сеть. Возможно, сбой передачи.
Степан прищурил глаза, озарившись допросным интересом. Холёное лицо исказилось. Маска успешного карьериста треснула, обнажив наигранный страх.
— Я знаю, вы все считаете, я — сволочь. Но ты думаешь, я люблю писать на вас отчёты? — зашептал горячо, опасливо озираясь. — Я годами ел то же дерьмо. Но я знаю намного больше, чем обычные операторы, и многое из такого, о чём хотел бы не знать. Я видел падение рейтингов сектора. Когда отключают свет и урезают пайки, а люди превращаются в зверей и грызут друг друга за каждый калорий. Я заслужил своё место на тёплом берегу и я не дам тебе с твоими экспериментами пробить брешь в плотине. Если будет надо — я сдам тебя. Не ради значка. А ради моего сектора, чтобы его из-за твоих сбоев завтра не отключили от жизнеобеспечения.
Виэн молча наклонился к терминалу и запустил эмулятор сигнала.Застучали пальцы по клавиатуре. На экране открылся модуль для тестирования сети — Степан сам сидел в таком до повышения, должен узнать внешний вид интерфейса. Бывшая каждодневная работа — контроль качества связи в сегменте. Поиск аномальных скачков, проверки сети.
На мониторе побежали зелёные графики. Запускались диагностические пакеты, гонявшие пустые данные по кругу. Со стороны напоминало напряженную работу по оптимизации трафика. На деле просто грел процессор. Никто не сможет отличить реальную работу от имитации, если на экране разноцветные графики.
Степан всегда плохо понимал, чем они занимаются.
— Сбой? Хм. Хорошо. Проверь рейтинг в главном терминале. И не создавай аномалий. Не надо лишний раз привлекать внимание.
Проверка закончилась. Вроде контролёр ушёл чуть успокоенный. Но петля затягивалась всё туже. Висение над пропастью на подрагивающем волоске.
Резкий вой сирены. Резкий, обрывистый. Синий дрон метнулся мимо окна. Яркий луч ударил вниз. Красное пятно.
В зале повисла напряжённая пауза. Сотни людей единовременно прекратили печатать, но никто не побежал к окну. Даже не повернулись. Наоборот, головы вжались в плечи, лица буквально вросли в мониторы. Боялись стать соучастниками не положенного. Стать свидетелем — значит попасть в отчёт. А попасть туда не хотел никто.
Гудели кулеры, разгоняя страх по залу.
На земле распласталось тело. К нему бежали фигуры в оранжевых жилетах — бригада зачистки. В такие бригады брали даже с рейтингом в тысячу. Деловито, без суеты, закинули труп на носилки. Швабра с жёстким ворсом, ведро с хлоркой. Несколько быстрых движений, тротуар очищен, уборщики быстро собрали мусор, о чём-то заспорили. Наверное, о том, чья очередь тащить носилки сзади — там же тяжелее. Для них смерть — не трагедия, а досадная помеха в графике, лишняя работа, не дающую бонусов. Останки, накрытые прорезиненной материей, для них — очередной мешок с мусором, который нужно доставить в утилизатор биомассы до обеденного перерыва.
Дроны-уборщики дороги. Живой ресурс дешевле.
Отвернулся. Вздрогнул. Не от холода. К будничности смерти не привыкнуть.
Нескончаемый поток логов, устаревших данных, их надо перетаскивать и синхронизировать. Затыкать дыры. Рутина без конца и без смысла.
Открыл очередной блок, помеченный «CORRUPTED». На экране рекой поплыли осколки чужой жизни. Отрывок аудиосообщения — женский голос напевает колыбельную. Скрипт уже распознал мелодию «неразборчивым шумом», пометил файл к удалению — требуется только подтверждение от человека. Несколько фотографий: двое людей — мужчина и женщина, на заднем плане — закат, держатся за руки, улыбки смазаны ретушью. Излишняя эмоциональность, код АЕ-1, подлежит автоматической коррекции — алгоритму не требуется подтверждение. Занёс палец над клавишей Delete. На секунду захотелось сохранить снимок, спрятать в глубине структуры папок, но отдёрнул руки. Излишняя сентиментальность могла привести к обнулению. Нажатие клавиши. Файл исчез. Навсегда.
Коснулся селектора. Степан ответил не сразу — теперь важная птица.
— Чего тебе?
— Нужна авторизация для доступа к архиву моих начислений. Хочу проверить, пришёл ли штраф за автомат. Может, сеть провисла.
— Проверяй. Но если найду там хоть одну левую команду — пеняй на себя.
«Ну да. Ты там и имени моего не найдёшь», проворчал себе под нос Виэн.
Некомпетентность начальства выручала уже не раз.
Открыл лог. Привычно набросал десяток дополнительных строк, имитирующих повышения и понижения рейтинга. Простейшая ловушка для того, кто просматривает поверхностную статистику. А то очевидна неизменность рейтинга в архиве. А в потоке данных не увидят главное — все манипуляции приводят к одному и тому же числу.
Терминал скрипел жёстким диском, обрабатывая массив данных. Старое железо не справлялось с объёмами данных, необходимыми для современной слежки. Экран то и дело моргал, по нему бежала рябь — наводки от силовых кабелей. Археолог, раскапывающий руины собственной жизни. Штрафы, поощрения, списания за еду, начисления за выслугу лет, и прочие записи. Сплошная фикция. Цифровые декорации, натянутые поверх пустоты.
Возился с архивом не один час. Вычитывал каждую строку. Подмечал малейшие несоответствия. Особенное внимание уделял записям, совпадающим с посещениями будок. По графику и ему приходилось их проходить. Записи содержали одинаковый кусок текста.
«CORE_SYSTEM_UNIT_BRAIN». «MECHANISM_IMAGE_SOUND_COMPARISON».
RBL_Value = 0xDEADBEEF -> [Internal_Kernel_Link].
Result =
Ignore_as_irrelevant_Vvalue-GroupOUT
Эти строки он каждый раз перечитывал снова и снова, пытаясь разгадать стоявшие за ними операции. «Игнорирование значения как нерелеватного». Ему не просто не проверяли рейтинг — его запрос даже не попадал в базу.
Сверка изображения, биометрия — все операции заканчивались тегом GroupOUT. А группа вне диапазона проверки. По запросу к ней вместо результата — прочерк. Терминал прекращал работу, не выдавая ни ошибки, ни сигнального знака. Как слепое пятно в глазу: знаешь, что перед лицом должен быть фонарный столб, а на его месте даже пустоты не видно. Система не только не наказывала его — вообще не замечала. И это было много хуже преследований.
Лучше бы объявили врагом. Враг обладает статусом. Врага ищут, если находят — казнят. А он — никто. Призрак в незаметной ни для кого зоне. Ошибка компиляции. Мог ходить, дышать, работать, но для контроля его действия не имели никакого веса. Существование — смысла. Если завтра он исчезнет, от него не останется ничего, кроме записи о нейтрализации.
Но тут же крылась и головокружительно опьяняющая возможность. Если не заметят, то не смогут и остановить.
Виэн вышел из кубикла. За спиной гудели оставленные без присмотра серверы.
Спустился к выходу. Впереди лежал город. Бескрайний бетон, взлетающий в небо, затянутое пеленой смога. Менялись яркие голографические баннеры, вспыхивали из-под земли, спускались сверху, развёртываясь, огромными полотнищами занавесей.
«ПРОВЕРЬ СВОЙ КОД. ВЫЖИВАЙ».
«ИСТОРИЯ — ЭТО ПОРЯДОК. ЗАБУДЬ ХАОС ПРОШЛОГО».
«ВНЕ ГОРОДА — ПУСТОШИ И СМЕРТЬ».
Изображения распадались на пиксели — проекторы давно требовали ремонта. Гигантские лица счастливых граждан на баннерах искажались жуткими гримасами, но толпа внизу не поднимала голов. Люди текли рекой по тротуару, стараясь не задеть друг друга, не пересечься вниманием. Город монотонно шипел шарканьем тысяч подошв и бормотанием объявлений из громкоговорителей. Ни смеха, ни громких разговоров. Только шелест страха.
Экран на доме напротив показывал жизнь успешной семьи. Добропорядочные родители с РБЛ 9500. Сказки, на всей планете таких и десятка не наберется.
«СЛЕДУЙ ПРОТОКОЛУ! БУДЬ БЛАГОНАДЕЖЕН!»
Программа Одобренные Знания. Сверкали проекции рекламы БМИГ — Базового Модуля Инженерной Грамотности. Модуль Кулинарных Навыков: синтетическая еда. И тут же выплыла красная мигающая надпись на другом баннере:
«НЕСАНКЦИОНИРОВАННЫЕ ЗНАНИЯ ЗАПРЕЩЕНЫ ЗАКОНОМ. -5000 РБЛ ЗА ЛИНГВИСТИЧЕСКИЕ ДЕВИАЦИИ! "
Любое знание, не способствующее функционированию, уничтожено или скрыто. Искать — самоубийство.
Монолитные небоскрёбыжилых уни-комплексов. Автоматизированные витрины, забитые стандартными товарами для ежедневного потребления населением. Покупатели туда приходят по строгому расписанию, лица апатичные, лишённые эмоций.
Они не знают о своём сидении в клетке. Думают, так и надо. Самая лучшая тюрьма — когда за горизонт принимают размалёванные стены.
Самый крупный баннер транслировал надпись «ЗАБУДЬ ХАОС ПРОШЛОГО!»
Раньше подобные слова звучали приказом. Теперь — насмешкой. Или подсказкой. Прошлое стёрто из-за опасности? Не поэтому ли стёрт из алгоритмов наказания?
Вышел на улицу и сразу чуть не споткнулся о человека, сидящего прямо на мостовой.
Вокруг образовалась пустота — толпа обтекала фигуру по широкой дуге. Не ранен, не болен. Хорошо одет, лицо гладкое, но искажено страхом. Тыкал браслетом в воздух, в терминал оплаты, в прохожих.
— Считайте мой код! — хрипел он, хватая за ноги. — Я здесь! У меня положительный баланс! Посмотрите!
Прохожие вырывались и ускоряли шаг. Браслет попрошайки мигал тревожным фиолетовым цветом. Аннулированный.
Судьба пострашнее расстрела. Пули милосердны, но имеют стоимость. Дешевле отключить провинившегося от реальности. Двери не открывались, вода не лилась, транспорт не останавливался. Призраки города с очень недолгим сроком оставшейся жизни. Умрёт от жажды посреди толпы, и никто не подаст воды — транзакция «помощь несуществующему» не пройдет валидацию.
Поспешил прочь,стараясь выкинуть из головы увиденное. Быть стёртым — адская участь.
Свернул за угол и сразу налетел на Степана.
Поперёк улицы растянулась баннерная лента. На ней по чистой улице беззвучно скользили электромобили. Персональный транспорт. Доступен с 5000 РБЛ. Степан с задранной головой стоял напротив, поглощенный рекламным роликом о новой модели. Лицо сияло. Он мечтал.
Между ними оставалось метров двадцать. Степан неохотно оторвал взгляд от созерцания недоступной роскоши и тут же встретил им Виэна. Кивнул. Запросто, по-приятельски. Но от этого кивка затрясло, как от удара током. Так мясник кивает выбранной для разделки корове. В коротком движении сосредоточилось больше угрозы, чем в сирене дрона.
Глава 14
Резкий стук распахнутой настежь двери грянул выстрелом. Над столом повисла пыль, поднятая сквозняком. Гости так не входят. Так открывают двери, когда за ними находится объект, подлежащий изъятию. Обычно тусклый свет из коридора сегодня ослепительно ярко сиял, безжалостно высвечивая убогость обстановки.
Оператор вздрогнул, едва не выронил очередной флакон синтетики.
Вошёл Степан, лицо держал положенной по уставу маской, но скрыть торжество ему не удавалось. За спиной маячили две фигуры в тёмной форме с нашивками СВК. Лица охранников скрывали матовые забрала шлемов. Обезличенная сила должна выглядеть страшнее. Степан, наоборот, выставил физиономию напоказ. На щеках полыхает румянец возбуждения, сводя к нулю результат попыток предстать бесстрастным профессионалом. Воротник новой формы уже натер шею докрасна, но он держался с важной прямотой, вероятно, репетировал перед зеркалом всё утро. Не каждый день выпадает такая фантастическая удача — лично поймать предателя. Гарантированное повышение на сотню баллов. Не просто успех — переход за пять тысяч, в новый, качественно более высокий уровень существования.
— Оператор 403, — в напряжённом голосе звенел плохо скрываемый восторг. — Вы отстранены от работы. По коду 7С-Альфа-9. Возможно, вы представляете собой критическую угрозу для целостности нашего общественного порядка. Пожалуйста, следуйте за нами.
Прозвучавший набор символов в коде заставил Виэна вздрогнуть. Не ошибка в работе, не нарушение дисциплины. Критическая угроза целостности. Такой статус присваивали не людям, а сбойным кластерам, подлежащим немедленному форматированию. Вопреки здравому смыслу внутри заворочалась неуместная гордость. Он, маленький винтик, угроза для всего мира.
Всё же заметили превышение доступа к данным. Или поиски сведений о Великом очищении. Слишком долго и глубоко копал в архивных данных, пытаясь найти тщательно скрываемое, чтобы вечно оставаться незаметным. Когда-то это должно было произойти. Ощущение хватки, столько лет тянущейся к нему из тени, обрело плоть пальцев, хватающих за горло.
Страха не возникло. Лишь горькое предвкушение. Такое ожидалось. Рейтинг 3141, не меняющийся, стабильно-посредственный — теперь не защита, а приговор. Поднялся и, не удостоив собравшихся взглядом, отправился к двери.
— Куда идти? — уточнил он, не оборачиваясь.
— На калибровку. А потом, сам знаешь…
Лифт неожиданно стал подниматься. Уши заложило от перепада давления.
— Транспортные магистрали среднего уровня перекрыты на ремонт, — с нарочитым раздражением, плохо скрывающим удовольствие, бросил Степан. — Дадим крюка через «Верхний Город». Там разрешён транзит спецтранспорта. Тебе повезло. Посмотришь напоследок на настоящую жизнь.
Скоростной лифт, предназначенный для элиты, не гудел и не трясся, в отличие от грузовых подъемников нижних уровней. Скользил вверх с ошеломляющей плавностью, пожирая этажи десятками. На дисплее менялись цифры уровней, забираясь туда, где рядовой оператор не бывал и в мыслях. Туда, где чистый кислород, а права на ошибку не существует вовсе.
Несмотря на обстоятельства, охватило любопытство. В верхах, тех, над уровнем дронов. Он почти никогда не бывал. Туда открывается доступ гражданам с РБЛ 5000 и выше, и Степан явно щеголял новыми возможностями. Сейчас на полную использует случай показать вчерашнему коллеге свою новую шикарную жизнь.
Охранники СВК вышли на одном из нижних уровней, рейтинги не позволяли им подъёма выше тридцатых этажей. Степан, ухмыляясь, занял место за рулём новенького персонального транспорта — обтекаемой капсулы, выданной за усердие. Не шикарнее рекламных голограмм, но все равно лучше, чем любая из нижнего сектора. Водитель сиял лампочкой, оглаживая поверхности машины — у малыша новая игрушка.
Салон пах нагретым пластиком и чем-то сладковато-хвойным. Так пахли ароматизированные салфетки для протирки оптики высшего класса, выдаваемые раз в год под роспись. Здесь — фон, расточительная трата химии ради комфорта. Степан небрежно бросил фуражку на приборную панель, но тут же поправил её, чтобы лежала ровно по центру. То и дело бросал косые взгляды на арестованного, безуспешно ожидая зависти или восторга. Для него арест вышел поводом устроить экскурсию по достижениям.
— Смотри, в ней обмыв зеркал, а ещё и ручное управление. Не самый скоростной, но зато личный! — погладил глянцевый рулевой джойстик. — Скоро и до 6 тысяч дойду. Вот тогда заживу!
Машину он вёл неуклюже, их постоянно обгоняли другие капсулы, автопилот то и дело деликатно подруливал, исправляя резкие рывки руля, но водитель упорно боролся с машиной, желая чувствовать контроль. Лихорадочно дёргал джойстик, от чего машину качало, словно ветром, и самодовольно улыбался, принимая работу стабилизаторов за собственное мастерство. Упивался ролью заправского водителя, притворяясь, будто ездит по таким дорогам каждый день.
Дороги действительно выглядели по-другому: безупречно гладкие, без единой трещинки, широкие эстакады вились над городом, открывая панораму вычищенных небоскрёбов.
На высоте от смога не было и следа. Завис ниже, плотным одеялом укрывая жилые ульи. Небо сияло аквамарином. Здания соединялись ажурными мостиками переходов, а в зеркальных стеклах отражалось настоящее солнце, открывающееся для нижних уровней по большим праздникам.
Но главное отличие — звуки. Нижний сектор выл вентиляцией, гудением трансформаторов и шарканьем тысяч ног. Местные звуки вязли в поглотителях. Даже воздух не шевелился — настоящее музейное хранилище, где держат ценные экспонаты. Демонстрационный мир, вычищенный до блеска.
Полупустые улицы. Редкие пешеходы двигались с бездушностью манекенов. Люди на тротуарах одеты куда лучше. Одежда индивидуального кроя, из ярких цветов, не похожих на униформу нижних уровней. Выглядели безмятежными, но по одинаковым выражениям лиц можно понять: вокруг — такая же иллюзия, как и нижняя. Вокруг такие же заключённые, просто прутья у их решёток позолочены, да поводок чуть длиннее.
Баннеры тоже другие. Внизу преобладали напоминания о Заговоре и угрозы, здесь же — демонстрация благ, доступных самым избранным.
На огромных голографических экранах демонстрировалась реклама одобренных городов, доступных для граждан с РБЛ 8500+. Сверкают небоскрёбы, зелёные парки, чистый кислород — очередная идеальная картина из жизни верхнего общества, навечно недоступной для подавляющего большинства населения. Рай для избранных: единый контроль и полная автоматика. И отдельным бонусом — отсутствие недостойных.
Все технологии служили исключительно для поддержания статуса-кво: голограммы транслировали только одобренную информацию, транспорт перемещал только избранных людей, коммуникации обеспечивали правильное общение. Не разрешено внедрение новых идей, запрещены инновации — только проверенные временем решения. Вокруг было удивительно чисто — за порядком следила автоматика, на каждом углу попадались роботизированные будки раздачи.
Виэн никогда не попадёт в такой мир. И не факт, что вернётся когда-то в свою прошлую жизнь.
Вплыли знакомые надписи:
«ИСТОРИЯ — ЭТО ПОРЯДОК. ЗАБУДЬ ХАОС ПРОШЛОГО»
«НЕСАНКЦИОНИРОВАННЫЕ ЗНАНИЯ ВЕДУТ К ДЕГЕНЕРАЦИИ»
Фраза, прежде вызывавшая лишь отстранённое любопытство, теперь звучала прямым подтверждением догадок. Подавлялись любые знания, могущие дестабилизировать контроль, а сведения о прошлом точно были из числа таких знаний. Исчезновение сведений о прошлом официально объяснялось достижением Великого Очищения. Сохранившиеся обрывки данных были искажены до неузнаваемости или находились под строжайшим контролем. Большая часть истинных знаний о прошлом стёрта с пометкой »дестабилизирующие данные». Поиски обрывочных записей о Великом Очищении привели к странному открытию. Найденные сведения совсем не походили на архивные данные о событиях прошлого. Натыкался на типовые логи на протяжении десятилетий с одними и те же записями:
SEARCH_AND_PURGE: destabilizing_data_packet_77a1, ISOLATE: non-compliant_philosophy_index, ERASE: legacy_OS_kernel
Cреди цифрового мусора нашёл частично поврежденный текстовый файл, датированный первыми днями после Очищения. Фрагмент, или, скорее, обрывок от утраченного манифеста.
«…человечество признало неспособность своей саморегуляции. Свобода воли — очевидная болезнь сознания, ведущая к войнам, голоду и самоуничтожению. Эмоции — вирус, разрушающий защиту нашей логики. Мы не тираны. Мы — врачи, и нашли лекарство. Мы разработали для человечества единственный возможный договор, Заговор ради выживания: вы отказываетесь от губительной химеры выбора, а мы даруем вам гарантированное, предсказуемое существование. Порядок — не самоцель. Порядок — единственная вакцина от человеческой природы…»
Помнилась пляска пикселей на экране при чтении файла. Формат не совпадал с современной развёрткой, строки «плыли», рассыпаясь на цветной калейдоскоп. Приходилось угадывать буквы в мешанине артефактов. Но смысл пробивался. Автор манифеста не сходил с ума. Документ демонстрировал гнев испуганных рационалистов, которые боялись не бунта, а непредсказуемости. Любовь, гнев, творчество — переменные, не попадающие в формулы. Уравнение упростили самым лёгким способом — убрав из него человека убрав из него человека, и оставив только функцию. Безжалостная философия контроля оказалась эффективной и прижилась.
Файл резко обрывался на «вакцине от человеческой природы», и продолжался набором нечитаемых системных символов — в своё время именно они замаскировали файл от уничтожения.
Чистку в сегодняшнем мире не назначали. Её проводили каждый день, каждую минуту. Великое Очищение — не событие, состояние. Неусыпный процесс постоянно мониторил подконтрольную сеть и выпалывал ростки запретных знаний при первом их появлении.
Степан перехватил немой вопрос, сухо проговорил:
— На Полянке тоже много думали об истории. Использовали запретные команды. Их сектор сейчас очищен.
Слова ужалили страхом и стыдом. Очистили станцию Книжников? Бедные буквоеды! Безобидные собиратели макулатуры. Если добрались до них, значит, гайки закручивают до срыва резьбы. И причина, возможно, в том самом обнаруженном сбое. Ощущение того, что дёрнул за ниточку и обрушил лавину, сдавило горло. Ведь порождено не убийство — зачистка целых секторов ради профилактики.
Водитель гордо, но все так же неуклюже припарковал транспорт возле одного из верхних шлюзов, ведущих к лифтам спуска. Безо всякой необходимости, исключительно для лишней демонстрации пропуска, прошли через коридоры с авторизацией к кабине, чтобы попасть обратно к нижней зоне, от лощёных проспектов верха к унылым улицам низа. Охранники ждали у выхода из лифта.
Дальше они шли пешком. Вдоль пути мелькали привычные, монотонные голографические баннеры, менялись изображения.
«ПРОВЕРЬ СВОЙ КОД. ВЫЖИВАЙ».
«СЛЕДУЙ ПРОТОКОЛУ! БУДЬ БЛАГОНАДЕЖЕН!»
Такие лозунги впечатаны в сознание каждого жителя нижних уровней.
Его вели к пункту глубокой калибровки.
Пункт стоял в тупике, зажатый между коробками технических блоков. Без камер наблюдения — они тут не требовались. Сюда привозили тех, кто исчез из реестров. Асфальт перед будкой темнее обычного, пропитан чем-то не выводящимся самыми мощными химикатами. Другой уровень звукопоглощения. Городской гомон сюда не проходил.
Будка глубокой калибровки походила на будки для проверки Заговора, но знающий человек сразу отличит. Цвет совсем чёрный, а корпус отливал зловещим блеском. Пункт глубокой калибровки означал практически гарантированный приговор.
Рядом с будкой завис наизготовку дрон. Перекрестье прицела поплясало на лице и груди, соскользнуло на пол у ног. Пока не время.
Машина смерти ждала запуска. Они не стреляют, пока цель имеет статус «в процессе транспортировки». Бюрократический лаг задержки перед сменой статуса — шанс. Эти тайминги он знал отлично, их приходилось перепроверять регулярно, потому что автоматика постоянно назначала неверные статусы. У него три секунды между завершением авторизации и активацией боевого режима. Три секунды на переход из статуса заключенного в исчезнувшую переменную.
Споткнулся, чуть не упал, рука проскользнула по стене. Нащупал пальцами стыки панелей, затем шов между ними. Отверстие в поверхности, технологический зазор. Любой человек прошел бы мимо, приняв за орнамент декора. Но техник знал: на стыке фундамента с обшивкой здания всегда делают сервисные лючки.
Старый технический люк, предназначенный для сброса строительного лома при ремонте верхних уровней. Петли давно заржавели, однако магнитный замок все ещё работал, питаясь от аварийного контура. Палец надавил на скрытую панель в определенной последовательности — длинный, два коротких. Пароль инженеров-монтажников не меняется с незапамятных времён. Только бы механизм не заклинило.
Хороший оператор прекрасно знал о таких нюансах. А Степан никогда не был хорошим оператором. Крошечный, но шанс. Замедлил шаг, издалека долетел вой включения сервомоторов.
Зацепил вниманием голограмму у самой будки. Стандартное сообщение: «ВЕЛИКОЕ ОЧИЩЕНИЕ ОБЕСПЕЧИЛО ПОРЯДОК».
Под ним — изображения довольных людей, и выделенная цветом, ярко различимая надпись над ними, иллюстрирующая их мысли:
«ИЗОЛЯЦИЯ ПРОШЛОГО — ЛУЧШАЯ ЗАЩИТА ОТ ДЕСТАБИЛИЗИРУЮЩИХ ДАННЫХ„.
Аварийный сброс заскрежетал, распахивая люк в тот момент, когда открылась дверь в Будку и сопровождающий сделал широкий приглашающий жест ладонью. Виэн, собрав все силы, схватил за руку и, раскрутив, втолкнул Степана в будку перед собой.
На лице контролёра мелькнуло комичное недоумение. Ожидая мольбы о пощаде и слёз, никак не ожидал толчка. Тщеславие сыграло с ним злую шутку — наслаждаясь триумфом, оказался слишком близко. Приговорённый использовал инерцию толчка, и, резко отпрянув, нырнул в узкий люк сброса. За спиной послышался крик охранника и выстрел кружившего над ними дрона. Пуля просвистела мимо, ударилась в потолок, выбив сноп искр.
Виэн катился кубарем по тёмному, пыльному туннелю, почти отвесно ведущему прямо к шахте старых утилизаторов. Падения с высоты ему не пережить. Вслед свистели пули, охранники палили наугад, но беглец уже исчез в клубах пыли и мусора.
Темнота пахла гнилью и старым металлом. Скользкие от жира поверхности шахты не сдерживали движение. Разбивалась кожа на локтях при ударах о стыки труб.
Скорость скольжения всё увеличивалась. В голове билась одна мысль: если гравикомпенсаторы утилизатора отключены, он — труп.
Взвыли старые катушки, создав слабую магнитную подушку для торможения контейнеров. Сработала жёстко, дёрнув внутренности, но погасила смертельную скорость до просто опасной. Кувыркаясь по инерции, увидел брошенный кабель и вцепился изо всех сил. Руки обожгло болью, но не отпустил, держал крепко и, раскачавшись, перелетел на другую сторону шахты.
Сзади загрохотали тяжёлые сапоги — в шахту следом за ним бросился один из охранников. Не из храбрости, просто в его шлеме вспыхнула красным: «УПУЩЕНИЕ ЦЕЛИ КАРАЕТСЯ УТИЛИЗАЦИЕЙ», и страх последствий пересилил страх перед тёмным туннелем. Только вот охранник полез в пустоту вслепую, действуя по бумажной инструкции, в которой не был учтен накопленный годами жир на полу. Пальцы в перчатке проскользнули в сантиметре мимо кабеля. Короткий крик оборвался отвратительным шлепком.
Наверху хрустнул закрытый автоматикой люк.
Беглец замер на уступе шириной в ступню. Краёмный камень крошится под подошвами, осыпается вниз. Под ногами — пропасть, за спиной — стена, впереди провал шахты, за ним скользкий подъем — ведёт обратно к уже заряженным на смертельный выстрел дронам.
Шахта ведёт в первичные отстойники — зловонное чрево города, последняя сортировка мусора перед уничтожением. Архитектуру нижних уровней он знал хорошо — среди коллекторов и сточных труб есть не только туннели сброса, на карте отмечали и проломы, ведущие в законсервированные транспортные артерии древности. А там — владения тех, кого не могут посчитать наверху. Подземный мир, описываемый в страшных городских легендах. И сейчас он застрял между отвергшим его небом, и бездной, не готовой его принять.
Глава 15
Виэн очнулся, помотал головой, первым делом рука судорожно метнулась к груди. Пальцы под курткой добежали на жёсткий прямоугольник на тонкой цепочке. Накопитель цел. Единственная и самая важная ценность — флешка с личными данными, собранный за годы работы могильщиком. Никогда не просматривал всю целиком, сомневался, что не сработает триггер удаления на домашнем терминале, но хранил в зашифрованных кластерах весь личный архив. Собственное право на память, которую собирал годами, пряча ото всех проверок.
Тело ныло, кожа горела от содранных участков и ушибов, голова гудела. В темноте всё же слетел с уступа. Висел, запутанный в ржавых тросах. Повезло — крепления оказались достаточно прочными и выдержали вес.
Шаг за шагом, цепляясь за выступающие камни и прогнившие конструкции, опять полез вверх. Нужен вентиляционный коридор, по расчётам, расположенный где-то совсем рядом. На втором или третьем пролёте, штреки вентиляции проложены через всё метро.
Он знал схему наизусть, не зря сутками напролёт изучал чертежи коммуникаций. План самоубийственно прост: вентиляционный короб приведёт в технический штрек, затем — заброшенными туннелями — к центральному распределительному кубу сектора Эпсилон. Там находилась точка раздачи питания, её можно закоротить, вызвав каскадное отключение света в жилых блоках СВК. Можно ударить по ним их же оружием — тьмой и хаосом. Правда, как этого сделать и как действовать дальше — даже не задумывался.
Тусклая лампа выхватила решётку, поросшую на сочленениях неровными пучками мха. Пошарил руками по сторонам, нащупал обломок ржавого прута с острым краем — вроде подходит под винтовой разрез. Скрипнув зубами от напряжения, попробовал шевельнуть крепежные болты. Металл скрежетал, сыпал обломками, но решётка поддалась. Пролез внутрь, и снова попал в кромешную тьму.
Узкий жестяной короб рассчитывали на поток воздуха, а не на человека. Плечи задевали стены, каждый выдох поднимал облака пыли, она забивала нос и рот, тяжело оседала в лёгких. Под животом вздрагивал пол от рокота далёких гигантских приводных механизмов.
Время потеряло смысл. Сохранилось только движение: подтянуть колени, вытянуть руки, протащить изнывающее тело ещё на полметра.
От усталости начало казаться, будто не ползёт, а плывёт, а нескончаемая толща бетона двигается вместе с ним. Сотни метров породы над головой давили на психику сильнее, чем теснота короба. Там, наверху, небо, дроны, и Степан с новой машиной, а здесь компанию составляет разве только утробный вой ветра из самого центра планеты. Никогда не думал, что тишина бывает такой громкой. От неё закладывало уши.
Трудности с ползанием по вентиляции предполагал, но всё же не ожидал настолько жуткого испытания. Вонь разложения не давала глубоко вдохнуть. Сбил колени и локти в кровь. Коридор длился бесконечно, ни люков, ни решёток. Собрав всю решимость, рванулся изо всех сил — и тут же нарвался.
Резкий скрежет — и проржавевшее крепление короба вырвало из стены. Под телом отломилась целая секция. Кубарем полетел вниз, ударил плечо о выступ. Глухой удар, вспышка боли в лодыжке — такая взрывная, что из глаз рванулись звёзды. Когда открыл глаза, то понял: до Эпсилона уже не добраться. Нога стала горячим куском свинца, попытка ей шевельнуть вызвала такой приступ боли, что он чуть не уплыл в беспамятство. Если это перелом, то весь выверенный маршрут пошёл прахом. Теперь осталась одна задача — выжить.
Он выпал в туннель. Вдалеке слабо сиял жёлтый свет. Виэн пополз из последних сил, мышцы от напряжения пылали огнём. За ним вытягивалась широкая полоса вытертой пыли.
Узкий проём вышвырнул прямо на разломанные рельсы, больно зашиб спину. Болезненный отсвет аварийных ламп разрежал темноту до полумрака. Угодил в заброшенный штрек метро.
Лежал на спине, до боли вдыхая холодный воздух туннеля. После затхлого короба вентиляции воздух казался чистым кислородом. Попробовал приподняться, голова закружилась, снова упал навзничь.
— Тише, — прозвучал над ним слабый голос.
С трудом заставил окружающий мир обрести чёткость. Над ним склонился исхудавший старик, испуганно озирается по сторонам. За ним маячили другие силуэты.
— С поверхности, — негромко сказали сверху. — Заражённый, наверное. Смотри, весь в крови.
— Нет, — так же тихо ответил другой голос, — побился, пока полз. Помоги поднять, давайте посадим.
— Куда ты пробирался, прыткий? — завибрировал воздух от рокочущего баса.
Его тряпичной куклой подняли огромные руки. Бородатый человек-гора, весь пропахший угольной пылью и старым железом, выглядел частью скалы. Кулаки, покрытые шрамами и навеки проевшей кожу угольной пылью, выглядели двумя молотами. Стоял, широко расставив ноги, подобно части крепи, удерживающей свод от обрушения.
— Я — Гром, — представился гигант, аккуратно перехватывая Виэна поудобнее, тот для него весил не больше кошки. — А ты — либо гость, либо покойник. Судя по тебе, выбрал второй вариант.
Руки жёсткими ветками коснулись повреждённой ноги. Дёрнулся, ожидая вспышки боли. Но эти руки не хватали, а ощупывали. Осторожно, с пугливым любопытством, точно диковинного зверя, выброшенного прибоем на берег.
Мозолистые ладони держали уверенно, без отстранения от брезгливости. Наверху человека трогали только защищённой ладонью, и по возможности — кратко, чтобы у наблюдателей не было возможности приписать штраф на несоблюдение личных границ. Это же прикосновение говорило: «Ты ещё жив».
Нашедшие беглеца люди выглядели страшно измученными, одежда висела на них лохмотьями. Бледные лица, впалые щеки, хилые тела. Голодные и больные, действовали без агрессии. Осторожно приподняли, помогая сесть.
— Ты с поверхности, — констатировал Гром, а не спросил. — Вижу, не привык к земле. Что привело тебя в наш ад?
— Кто вы? — голос был слабым, сам себя еле расслышал.
— Мы — сборщики влаги, — ответил один из живых скелетов. — Собираем воду для Крыс. Нас держат для работы.
Воды натекало в избытке — прорези в земле сочились влагой, с потолка постоянно капало. Проблема не в поиске, а в сборе и очистке. Всё вокруг опутано пластиковой паутиной — желобами из разрезанных труб и обшивкой от старых кабелей. Вода стекала в отстойники из ржавых бочек, наполненных гравием и углем. Примитивно работающая фильтрация. Люди монотонно меняли фильтры, сливали отстоявшуюся влагу во флягу. Грязная, бесконечная работа в сырости, от которой одежда гнила прямо на теле.
К фляге прикрепили тонкие трубочки, собирающие конденсат в самодельные емкости. Его устроили в небольшой нише и дали выпить прохладной воды. Позволили забыться во беспокойном сне измождения.
Спустя пару часов надрывный скрип металла возвестил о приближении Крыс. Работники встрепенулись, в движениях проявился загнанный страх.
Из-за поворота вынырнул вагончик метро, прицепленный к ржавой платформе. Трое Крыс стояли на платформе вагона, держа дубинки и кривые ножи.
— Собрались! Быстро! — злобно крикнул передний.
Беглеца, несмотря на протесты, затащили в вагон. «Мы можем не приехать сюда снова и через месяцы» — прошептали на ухо, и он прекратил сопротивление. Лежа среди измученных тел, он чувствовал их осторожные движения — его старались не задевать. Вагончик набрал скорость и покатил вглубь туннелей.
Колёса стучали по стыкам рельсов, этот стук убаюкивал, погружая в дремоту. Снаружи густо легла темнота. Пялился в неё в попытке распознать маршрут, но там лишь мелькали и плясали пятна света от фонарей. Меркнущее сознание дразнило образом — они не едут по ровным рельсам, а спускаются в жерло вулкана.
Мимо проплывали станции-призраки. Некоторые сохранили остатки плитки и разбитые эскалаторы. На других царила тьма со вспыхивающими зелёными огоньками - настоящие крысы следили за ними. Было теплее и более влажно, пахло прелой органикой и дымом. Так пахнет болезненная, грибковая жизнь, растущая на развалинах.
Вагончик прогрохотал мимо платформы с колоннами, облицованными когда-то белым мрамором. Когда-то облицованные красивым белым мрамором, сейчас осыпались и покрылись пятнами плесени, частями обвалились и походили на недостроенные песочные замки. Свет фонаря неспешно прополз вдоль стены, обрисовал контуры уцелевших крупных букв названия станции: «…ОФС…З…АЯ». Другие буквы все отвалились, оставив тёмные следы. Кладбище цивилизации, когда-то умеющей строить дворцы под землей, и не сумевшей их сохранить.
Поездка вышла долгой. Счёт времени потерялся в покачивании под монотонный стук колес. Пробовал спросить соседей, но те испуганно отворачивали лица, боясь быть замеченными за разговором. Донёсся шёпот, Виэн скосил глаза на звук. Кто-то сгорбленный неподвижно сидел рядом. Лица в полутьме не разобрал, увидел только седой клок бороды. Борода не шевельнулась, но голос прозвучал совсем близко: «Коньково…нас везут в Коньково.»
Когда вагончик приехал, рабов грубо вытолкали наружу, тут же загнав на освободившиеся места следующую группу. Беглеца вытащили на руках, открыв перед ним жуткую картину — целую подземную плантацию, вырытую прямо в туннелях. Десятки бледных людей работали в скудном свете тусклых потолочных ламп, собирали подземный урожай. Сладковатый воздух пах грибницами. Тянули ряды бесконечные стеллажи, сколоченные из гнилых досок, в ваннах с зеленоватой жижей росли бледные, мясистые грибы. Тени мелькали между грядками, срезая урожай ржавыми ножами. Здесь не было нужды в надзирателях и камерах, контроль прекрасно заменялся голодом. Норма выработки — миска похлебки. Не сдал норму — сиди голодным. Простая и жестокая, но чрезвычайно эффективная экономика.
Вдоль путей, прямо на шпалах, стояли ящики с землей. В них росли не только грибы, но и бледный мох, и тонкие, хилые стебли неизвестных растений. Все близлежащие туннели превратили в огромную ферму. Влага капала с потолка, питая подземную жизнь. Каждый квадратный сантиметр использовали для производства на продажу.
Так Виэн попал в Коньково — самую обширную колонию рабов, подконтрольную Крысам.
Дальнейшее сохранилось вспышками. Лица над ним выплывали масками из собственных стёртых архивов. Неразборчиво бормотал про Степана, про доступ, искал флешку, но Гром мягко прижимал плечи к земле, успокаивал. Сознание плавало в горячем тумане. И постоянно полз по трубе, ставшей мягкой и пахнущей похлебкой из грибов.
Выздоровление шло долго. Лихорадка выжигала сознание. То нырял в черноту, то приходил в себя, судорожно хватая ртом вдохи. Видел сны, как лежит внутри огромного компьютера, а вокруг гудят кулеры и мощными вентиляторами выдувают из него жизнь. Звучали голоса, но он не понимал слов. Чужие руки меняли повязки на ссадинах, лили воду в пересохший от жара рот. Беспомощный, как сломанный модуль, почему-то не выброшенный после безуспешных попыток починить, больной лежал на куче тряпья, и трясся в ознобе. В своём бреду он снова был в офисе, только клавиши терминала стали раскалёнными углями, а мерзавец Степан истерически хохотал, заливал монитор жижей из грибов. Молодая женщина по имени Зара кормила его с ложки горьким отваром, вытирала пот со лба. Её лицо всплывало урывками — уставшее, с ранними морщинами на иссохшем лице, с суровостью во взгляде, возникшей от постоянной борьбы за жизнь.
Он глотал то, что раньше счёл бы биологическими отходами. И с очередным глотком мутной дряни интеллигентный оператор компьютера уходил во тьму, уступая место новой личности, гораздо более злой и жёсткой.
Зара и Гром помогали встать на ноги, но в возможность борьбы не верили, отмахивались от его страстных призывов.
— Да, мы не можем так дальше, — шептала Зара. — Каждый день смерти от голода или болезней. Или Крысы забивают со злобы. Но как мы можем сопротивляться?
— Как сопротивляться? — вторил ей Гром, кивком указывая на примитивное, но смертельное оружие Крыс. — У них оружие. У нас нет ничего, кроме голых рук. Ты рассчитываешь на помощь тех, кто сверху? За тобой придут?
Виэну пришлось их разочаровать. Он кратко описал историю своих злоключений. Гром слушал, и потом хмуро хмыкнул.
— Значит, с компьютерами? Интересное дело. Но здесь не поможет. Тут лучше работают дубинки, чем коды.
Всё было очевидно. У рабов не было сил и ресурсов для противостояния хорошо вооружённым и организованным Крысам. Были бесконечно усталые лица, тела, и тотальное неверие в собственные силы. Сотни отчаявшихся людей. Пушечное мясо. Силы, но слишком малые для штурма.
Он проанализировал работу колонии сторонним аудитором. Жизнь в Коньково подчинялась жёсткому распорядку. Рабы спали прямо на стеллажах между грибницами или в нишах, застеленных рваным пластиком, сменяя друг друга посменно: коек на всех не хватало. Раздача еды происходила раз в двенадцать часов. Молчаливый ритуал выстраивания в очередь к огромному баку, где Крысы раздавали черпак густого, серого варева из переработанных белков и измельченного мха. Никто не жаловался — отсутствие черпака означало смерть в течение суток.
Примитивные схемы контроля. Крысы приходили строго по расписанию. Оружие у всех старое, ненадёжное, через раз — осечки. Патроны экономят. Дисциплина, задуманная армейской, держалась исключительно на страхе, внутри линейной иерархии царил сплошной саботаж. Охранники с постоянной руганью при дележе грибов и воды. Транспорт с частыми поломками, которые устраняли всё те же охранники. Гнилой контроль, полный уязвимостей. А любую уязвимость можно использовать для взлома.
Крысы сильные, но ленивые. Больше верят в страх рабов, чем в бдительность. Посты охраны выставлены формально. Во время обеда надсмотрщики собирают кучу у костра, бросая периметр без присмотра. Играют в кости, громко спорят, устраивают драки за лучший кусок мяса. Почти никогда не чистят оружие — стволы автоматов покрыты ржавчиной и нагаром. Генератор, питающий освещение, работает с перебоями, вообще никем не обслуживается. Вся техника работает на износ, без малейшего администрирования. И может рухнуть от малейшего толчка.
— Вы не можете так жить, — тихо, но твёрдо сказал оператор гиганту, когда немного пришёл в себя. — И не должны. Скажи, сколько здесь человек, способных держать что-то потяжелее одного камня?
Гром недоверчиво скосил на него взгляд.
— Ну, десятка три есть. А толку? Нас перебьют за пять минут.
— Если брать силой и ломать стену лбом — да. Но я предлагаю перестать колотить в стену головой и начать разбирать по кирпичику. Крысы — такие же люди, как и мы, просто с автоматами.
— Но оружие всё равно нужно, — возразил Гром.
— Не нужно штурмовать в лоб, — Виэн сделал короткий жест отрицания, чертя пальцем схему на пыльном полу. — У них есть слабые точки — ресурсы. Свет. Вода. Вентиляция. Крысы зависят от инфраструктуры, а как она устроена — не понимают даже приблизительно. Мы же знаем, где проходят кабели. Знаем способ перекрытия шлюзов. Если лишить колонию света и связи, они начнут паниковать. А паника порождает ошибки. Крыс надо разделить, ослепить и перебить поодиночке. Нам не нужна война, Гром, достаточно аварийного отключения.
Он погрузился в расчёты и, к удивлению, понял, что совершенно не испытывает страха. Может быть, потому что перебирал варианты не собственного спасения, а архитектуры чужого бунта, но своя судьба его почему-то перестала беспокоить.
Надзиратели разобщены. Между ними постоянно вспыхивали стычки за контроль над территориями и ресурсами. Один клан Крыс мог запросто напасть на другой, и отобрать продовольствие или оружие. Подобные конфликты отвлекали внимание армии, давая рабам крохотную передышку.
— Хищники сюда не добираются, — объяснил Гром. — Мы очень глубоко и вокруг сложный лабиринт туннелей. Предпочитают территории поближе к поверхности. И у нас есть возможность жить.
Последнее слово произнёс с акцентом. С циничным.
— Жить, — эхом повторил бывший житель верхов, созерцая сгорбленные спины. — Так не живут, Гром. Так существуют в режиме ожидания перед утилизацией. И таймер до неё уже запущен.
Глядя на жителей подземки, он понял — уйти и не помочь им теперь невозможно. Это не строчки кода, вроде тех, что приходилось удалять годами. Здесь годами живут в терроре, постоянном и чудовищном страхе, и всё равно забота о чужаке оказалась для них важнее угрозы от надсмотрщиков. Он им должен. Наверху — могильщик памяти, здесь должен стать инструментом помощи. Зная до последнего винтика систему, превращающую жителей в рабов, он был готов вырвать её с корнем, используя знания, приговорившие его самого к смерти.
Глава 16
Самым страшным в Коньково открылось вовсе не рабство.
Хуже всего было обнаружить здесь детей. С похожей на старый пергамент кожей — тонкой, желтоватой, с просвечивающей синевой вен. Не испуганные, скорее, бесконечно уставшие существа без возраста. Маленькие, сбитые в кровь руки сноровисто перебирали грибницу. Однажды маленькая девочка положила на пол у вентиляции крошку сухаря и подняла обломок кирпича. Не подкармливала живность — устраивала засаду на крысу. Местные дети взрослели, как только переставали есть материнский паёк.
Коньково являлось не обычной ямой для рабов, но крупным промышленным узлом подземного мира. Местные «чёрные плантации» производили тонны питательной белковой массы — тяжёлых, мясистых грибов, составлявших основу рациона большинства кланов метро. Раз в неделю к гермоворотам прибывали тяжело нагруженные ручные дрезины других банд. В обмен на провизию Крысы Коньково получали всё, позволявшее им удерживать власть: цинковые ящики с самопальными патронами, чистые фильтры для респираторов, медикаменты и «искру» — горючую смесь для генераторов. Они понимали простую истину: пока ты кормишь хищника, твою руку не кусают.
Воздух в штольнях, насквозь пропитанный влагой, неохотно проходил в лёгкие. Грибы на стеллажах источали мертвенное, белесое свечение, от него у людей неостановимо текли слёзы. Отовсюду был слышен влажный, булькающий кашель — лёгкие медленно каменели.
Более сильное телосложение и нетипичная для раба энергия привлекли внимание. Вскоре его потащили к хозяину штолен.
По пути Виэн заметил вмурованный в стену блок. Блок выглядел вызывающе высокотехнологично. Терминал связи защищен тяжёлой бронепластиной. Экран, покрытый сетью мелких царапин, тускло светит зелёным цветом. От корпуса к ретрансляторам верхних уровней прямо в полоток пучками уходили жгуты проводов.
Инфокороб. Крысы взаимодействовали со внешним миром через примитивный интерфейс — единственный мост между подземным адом и остатками цивилизации. Торговали с остальными кланами. Выставляли лоты на продажу и принимали заказы. Терминал служил священным оракулом: через него приходило подтверждение сделок и новости о движении караванов. Виэн успел заметить, как к терминалу подошёл бандит и потащил истрёпанную бумажку из-за правого верхнего угла монитора.
Раба вели в элитный сектор — вагоны с яркими лампами и вульгарной роскошью, издевательство на фоне грязных рабских лохмотьев. В центре балагана стоял трон, грубо сколоченный из обломков и устланный драными коврами. Вокруг были раскиданы пустые канистры и обглоданные кости.
Огромный бородатый мужчина с отвратительным шрамом от лба до подбородка, проходившим слева через бельмо, презрительно махнул охране. На шее висела целая гирлянда из старых электронных ключей — бесполезных побрякушек, сочтённых за декоративную ценность.
— Новенький, значит? — прохрипел он. — С поверхности прилетел, да? Ну, ничего. Все работают. И ты будешь.
После недолгого обсуждения, новичка решили отправить работать вместе со всеми. Ничего особенного, очередное пополнение рабочей силы.
Виэн, однако, уже обдумал план. Лезть на рожон с заточкой против автоматов означало одно — пополнить кучу костей в дальнем туннеле. Крысы многочисленны, жестоки и хорошо вооружены. Нужна хитрость, многоходовка. Они находятся в постоянном поиске ресурсов — вот и надо использовать их алчность против них самих.
— Вождь, — окликнул он, когда собрались уводить. — Я хочу сообщить тебе важную вещь. Наедине.
Вожак, удивлённый такой дерзостью, но заинтригованный, взмахом руки отослал подручных. Когда отошли, пленник наклонился, придвинул губы к подставленному уху.
— У меня есть РБЛ, — негромко проговорил он. — Тысячи единиц. Я готов потратить всё на тебя. За свою свободу. Я плачу — ты отпускаешь.
Единственный глаз сжал уголки в узкие щели. Рейтинг! Пусть пленник и привирает в числе, но даже одна тысяча единиц — настоящая сокровищница, каждый балл даёт привилегии.
- Тысячи единиц, Вождь, — добавил тот, видя колебания. — Не биоеда или питательная паста. Стимуляторы, от них твои бойцы не будут чувствовать боли. Новые фильтры для воды, а не тот угольный мусор, что вы обычно жрёте. Доступ к оружейным шкафам гражданской обороны.
Вожак с шумом втянул воздух. Пленник говорит дельные вещи. Еда — дело нужное, но доступ к оружию и медицине — подлинный клад. С рейтингом в пару тысяч он перестанет быть главарем шайки в грязной норе. Сможет подмять соседние станции. Стать настоящим королём подземелья.
— Откуда? — прохрипел он, недоверчиво, но заинтересованно.
— Я попал сюда по ошибке, был с аналитиками в туннелях, и отстал, — выдал Виэн заранее заготовленную версию. — Не сомневайся, мой РБЛ законный и может быть использован. Можешь проверить. Но я ничего не могу получить здесь. И ты тоже не можешь. Но я знаю, где. И ты тоже знаешь.
В глазах Вождя вспыхнул блеск — слова пленника упали на благодатную почву.
Автоматический маркет. Построенный крепостью от мародеров, с полностью автоматической выдачей. Никто не смог взять. Куб монолитом стоял на перекрестке туннелей. Гладкий, ни единой щели. Многие пытались вскрыть. Следы от ломов, подпалины от самодельной взрывчатки, бурые пятна крови украшали фасад. Крысы приходили к нему, стучали по броне, облизывались и уходили ни с чем. А Куб гудел, дразня синтезированными вкусами сквозь микровентиляцию.
Турели «Цербер» сканируют РБЛ на подходе. Если РБЛ отсутствует или нулевой — крупный калибр разрывает тело человека в кровавую пыль раньше, чем тот успеет осознать смерть. Если низкий — дверь не открывается.
— Вы же пробовали ломать двери ломами? Положили кучу людей, верно? Там бронестекло и активная защита. А я подойду, приложу руку, и доставка сама выкатит контейнеры. Без единого выстрела. В нём до сих пор работают холодильники и лежит еда. И если подключить к нему заговор, можно получить картофель. И мясо, не бегавшее по туннелям. Не суррогат из переработанного белка, — продолжил искуситель, интригующе понизив громкость голоса. — Шоколад, Вождь. Плитки в фольге. Сладкий до опьянения. Один кусок — и голод отступает на полдня. Чистая энергия. А ещё вино. Прозрачное, без мути сивухи. Оно не валит с ног, вроде местной браги, а греет изнутри. Вкус, недоступный никому.
Губы на изуродованном лице растянули оскал, обнажая гнилые обломки в жуткой гримасе довольства. Вино! Истории о вине переходили изустно — сам видел пустые бутылки с красивыми этикетками. Владеть вином — значило быть королем по-настоящему. Пленник предлагал статус, доступный далеко не каждому даже наверху. Простые Крысы не пробовали вина никогда.
— Настоящее, — припечатал Виэн. — В керамике. Запечатанное сургучом. Не та брага из гнилых грибов, которой вы травите друг друга. А чистое, без осадка. Бьёт в голову мягко, но сильно. Забываешь о холоде и голоде.
Пальцы бандита непроизвольно сжались, мысленно ощупывая гладкое стекло бутылки. Великое искушение. Даже если пленник лгал, шанс прикоснуться к такой жизни перевешивал осторожность. Но бандит обладал достаточно большим опытом для слепой веры пленнику на слово. И прекрасно понимал — за настоящий рейтинг свои же слуги разорвут на части.
— Откуда мне знать твою честность? — прохрипел он, изучая пленника в упор. — Докажи.
— Я не могу показать баллы здесь — у вас нет сканеров. Но у меня полный биометрический счёт поверхности, со всеми маркерами — и сетчатка, и голос, и отпечатки. Доступ активен при любом запросе от терминала оплаты. Здесь я — нищий. Но подведи меня к сканеру Куба, и станешь богаче короля.
Вожак сплюнул.
— А если ты тянешь время?
Пленник пожал плечами.
— То ты убьёшь меня прямо у двери Куба. Что ты теряешь, Вождь? Небольшую прогулку? А если я говорю правду, ты получишь всё. Риск — ноль. Выигрыш — жизнь в роскоши. Разве не стоит проверки?
— Хорошо, — прохрипел бандит. — Я согласен. Но если ты меня обманешь, я вырву твой язык и скормлю псам. Мы сходим вдвоем. Ты дашь мне вино. А потом посмотрим.
Пленник покорно опустил голову, спрятал взгляд. Вожак только что не развернул транспарант с надписью «готовлю предательство». Но задуманная комбинация это учитывает. Супермаркету предстоит быть ограбленным и главарь получит своё вино, но при этом сам отдаст ключи от крепости для совершения революции.
Опытный бандит не позвал лейтенантов, и понятно — почему. В мире Крыс доверия не существовало — одна голая иерархия страха. Вожак знал: стоит Кривому или Гнилому услышать хоть слово о рейтинге, и к утру вожаку перережут собственную глотку. Алчность — интимное чувство. Выигрыш от возможности получить доступ к вину и оружию напрямую, без посредников и лишних свидетелей, слишком заманчив для деления с кем-то. Раб предлагал цену, которую не мог дать ни один, самый преданный боец: статус выше рыночного обмена и грязных сделок. Жадность заставила Вожака забыть об осторожности — поверив в находку личного ключа от рая, теперь будет сам следить за непопаданием ключа в чужие руки. Кроме того, Виэн выглядел настолько хрупким и чужим — Вожак не видел в нём личной угрозы. Полезный, хоть и странный инструмент, а инструмент можно сломать и выкинуть сразу после использования.
Вечером оператор нашёл Грома у тусклых светильников.
— Я обманул вождя, — без предисловий сообщил он. — Обещал отдать ему баллы РБЛ. Он пойдёт со мной к автоматическому маркету.
Гром пожал плечами.
— И? Еду заберёт, тебя убьёт. Нам-то что?
— Есть план, — говорил тихо, одними губами, но Гром слышал каждое слово. — Вожак жаден. Предвкушение уже вытеснило из его головы мысли о засаде. Возьмёт с собой лучших бойцов. Плантация будет без охраны. Это даст вам шанс.
Гигант нахмурил брови, обдумывая слова.
— Шанс на что? На бунт, подавленный через час?
— Его некому будет подавлять, — Виэн наклонился к самому уху. — Вы получите шанс на полноценный захват власти. Ты сможешь поднять всех здесь. А из похода в супермаркет вернутся далеко не все бандиты. Я не боец, Гром. Но я умею находить уязвимости. В том числе и в командах бандитов.
— Чересчур хорошо для правды, — не поверил Гром.
— Я и не прошу верить. Я прошу помочь. Убить надсмотрщиков — значит подписать себе смертный приговор. Если плантация замолчит, другие кланы придут сюда через день, узнать, где их еда. Нам нужно захватить не сами грибницы. Нам нужно захватить терминал и систему обмена. Мы не будем разрушать торговлю, мы её возглавим. Если заблокировать входы здесь, и вот тут, — он понизил голос, чертя план пальцем на пыльной стене, — то останется контролировать одни проходные коридоры. А когда мы возьмем под контроль информационные узлы, мы сможем диктовать условия. Мы станем не бунтовщиками, а новыми поставщиками. Тот, кто распределяет калории, владеет каналом связи, тот и пишет законы туннеля. Крысы не решатся напасть, если первый же выстрел в нашу сторону прекратит все поставки навсегда. Их тогда сожрут остальные кланы.
Шахтёр долго подбирал слова, рассматривая огромные руки. Ломать установленный порядок гораздо страшнее и труднее, чем камень.
— Ты просишь нас рискнуть всем ради призрачной надежды, — произнёс тяжело. — Если ты неправ, они вырежут нас всех до единого. Включая детей.
Пальцы хрустнули, и собрали кулак размером с голову Виэна. Прошлый бунт. Тела, развешенные в назидание на крюках вдоль главного туннеля. Гарь от выстрелов, крики умирающих, что с тех пор чуть не каждую ночь видятся в ночных кошмарах. Угасший от истощения сын. Ему самому терять, кроме цепей, нечего, но есть же и другие.
Гром тронул под грязной робой самодельный медальон на груди — гайку на шнурке. Наследство брата, погибшего в «Слизь-плантации» год назад. Тот упал лицом в грибницу и больше не встал, а надсмотрщики не позволили похоронить, сбросив тело в утилизатор биомассы.
— Если я дам команду, они пойдут, — глухо произнес гигант, невидяще глядя в темноту туннеля. — Но если ты врёшь, я лично сверну тебе шею прежде, чем нас расстреляют. Ради тех, кому я дам ложную надежду.
На лице гиганта отражалась очевидная борьба.
— Я не прошу тебя верить мне, Гром, — добавил более мягким тоном, увидев дёрнувшийся мускул на щеке гиганта. — Я прошу тебя поверить в собственную ненависть к ним. Ту, которая сильнее твоего страха. Я же вижу, ты давно ждал инструмента для проявления своей ненависти. Я — этот инструмент.
Гром посмотрел в угол, где на грязной подстилке спал мальчик лет семи. Ребенок во сне сосал палец, судорожно сжимая кусок сухой плесени — лакомство, сбережённое на завтра.
— Моему сыну было столько же, — глухо произнёс Гром. — Я говорил: «Терпи, мы живём тихо, и нас не тронут». Я учил его незаметно жить. И он умер незаметно. Тихо угас, пока я выполнял норму, чтобы получить ему похлёбку.
Желваки скул дёрнулись, заскрипели зубы.
— Ты прав, пришелец с верха. Мы не живем. Мы медленно дохнем. Если существует хоть один шанс показать солнце этому пацану, — посмотрел на спящего, — я готов за это сдохнуть. Я в деле.
За ним пришли на следующее утро. Отряд возглавлял лично сам хозяин штолен.
— Ты, — коротко бросил он. — Мы едем на Клуж. Калжу… дурацкое название, опять вылетело…
— Калужская, — подсказал один из головорезов.
— Да, Калужская. Там самый большой маркет. Мы поедем и ты выдашь нам всё, весь твой рейтинг. Мы потратим все до последней единицы. На меня и моих верных ребят. Всю твою тысячу.
Последнее слово выделил излишне намеренно, даже головорезы перевели удивлённые взгляды.
— Хорошо, — согласился пленник, но не отдал поклон, как положено при завершении разговора, а шагнул к главарю, перекрывая обзор на отряд, и тихо добавил. — Ты совершаешь ошибку, Вождь.
Главарь остолбенел от такой наглости, рука дернулась к ножу.
— Ты смеешь учить меня?
— Я берегу твои капиталы, — пленник говорил тихо, но настойчиво, не давая времени на возражения. — Подумай о грузе. Грузе будет много. Центнеры еды, ящики с вином. Кто всё понесёт? Твои бойцы?
— Не переломятся.
— Вот именно — не переломятся. Скорее, наоборот. Ты сам посуди: туннель, ящик с вином у бойца. Ты уверен, до базы доедут все бутылки? Уверен, шоколад не исчезнет в карманах, пока ты будешь занят? Ты не сможешь следить за каждой спиной.
Вожак засопел. Мысль о воровстве сокровищ его же подручными, ударила в самое больное место — в жадность.
— Рабы, — процедил он. — Пусть тащат рабы.
— Верно. Но за рабами нужно смотреть. И за бойцами, их охраняющими, тоже. Тебе нужны все твои люди. Каждый следит за соседом. Ты ведь знаешь, кто у тебя в подручных, Вождь, — раб понизил голос и его не слышала охрана. — Оставь кого-то из них на базе, пока сам пойдешь за сокровищами, и подвергнешь себя опасности. Тот, кто держит базу, держит власть. Ты уйдешь хозяином, а придёшь к закрытым воротам. Ты не замечаешь, как Кривой смотрит на тебя, когда ты не видишь. Оставь Кривого с полным складом еды и оружия, и, когда ты придёшь назад, ворота не откроют. Скажет всем — ты погиб, и объявит себя новым главарём. Единственный способ сохранить власть — держать всех перед собой.
Лицо бандита передёрнуло. Сомнения попали в точку. Ведь и сам захватил власть, перерезав глотку предыдущему главарю, пока тот спал. Никому нельзя верить.
— А плантация? — буркнул он, все ещё полный колебаний. — Если я возьму всех, кто будет охранять рабов и запасы?
— Задрай гермоворота, поставь растяжки. Рабы никуда не убегут. Грибы тоже. А вот твоя верная гвардия, оставшись со всеми запасами, может запросто решить — старый Вождь им больше не нужен. Все должны быть под присмотром. Для переноса всего полученного, тебе нужны все спины. Тогда никто не сможет ударить в твою.
Паранойя сработала. Бандит резко развернулся к подчинённым.
Виэн взглядом отыскал в толпе Грома, тот коротко дёрнул головой в ответ. Сомнения покинули гиганта, осталась лишь сосредоточенность хищника перед прыжком.
Главарь, купленный собственной жадностью, отдал приказ. Лагерь наполнился движением, напоминающее суматоху в развороченном муравейнике. Бойцы чистили оружие, проверяли запасы воды. Рабов сгоняли пинками. В поведении грузчиков сквозил всё тот же страх, но оператор замечал нарочитость в покорности поз и немые сигналы для Грома. Тот действовал по плану. Ловко подставлял под выбор надсмотрщиков самых крепких и надежных рабов, оттесняя слабых назад. В грузовой отряд попали те, кто умел держать не только кирку, но и нож. Они шли, опустив головы, мышцы напряжены пружинами.
Контраст между двумя группами пугал, но бандиты в предвкушении праздника ничего не замечали. Охрана гоготала, обсуждая вкус никогда не пробованного спирта, и толкала друг друга, позвякивая оружием. Внимание рассеяли ещё до выхода из ворот. Рабы же двигались единым организмом, абсолютно тихо. Ни лишнего звука, ни неосторожного жеста. Пустые мешки для провизии напоминали удавки. Гром шёл последним. Сутулил плечи, пряча рост, сжимал кулаки изо всех сил, ногти до крови ранили ладони.
Оператор сбил шаг, оказался рядом, и успел шепнуть Грому последнее наставление:
— В вагоне тесно — используйте это, устройте толкучку в темноте. Им будет неудобно, набрали оружия с длинными стволами. Нож в толкучке страшнее автомата. И помни: мы не бунтуем ради еды. Мы собираем армию. Армии для захвата власти. Сначала здесь, а потом — посмотрим. Да, и код для открытия терминала спрятан за правым верхним углом монитора.
Глава 17
Замок щёлкнул, приводы взвыли, с натугой сдвигая бронированную створку. Тяжёлая дверь откатилась, открывая проход.
Оператор с облегчением выдохнул. До последнего момента не верил в собственный план.
Автономный монолит терминала пустил в крепость изобилия, но напряжение не отпускало. Беспокоили не технические неполадки, а исправления. Застывший рейтинг — баг, ошибка, сделанная щитом. Но вдруг после недавнего инцидента с неудавшимся приговором Ядро всё же обратило внимание на аномалию? Если статус обнулили принудительно? Для машины строчка кода «Доступ запрещен», а для сопящего за спиной бандита — сигнал к немедленной расправе. На секунду завис в нерешительности. Таймер дошёл до нуля, сапёр замкнул последний контакт, и стоит, не зная, обезвредил ли мину или сейчас раздастся взрыв и разнесёт всё вокруг в клочья.
Запищал интерфейс, появилась зелёная рамка разрешения. Торопливо набрал коды немедленной доставки, добавил ключи для выдачи на текущую точку без ограничений.
С момента их принятия отсчёт измеряется секундами. Механика процесса хорошо известна: логистический контур обработает запрос и выдаст продукт. Но аналитический контур, сверив объемы с лимитами сектора, неизбежно выявит аномалию. Задержка из-за бюрократического лага, допустим, минут десять. Затем Контроль поймёт, что куб грабят, переквалифицирует инцидент из сбоя выдачи в критическую угрозу. А на устранение критических угроз выезжают вовсе не ремонтники. Сюда пришлют ликвидаторов, которые уберут тех, кого не под силу одолеть самому.
Пневмоканалы послушно выбросили первые герметичные термоконтейнеры и стандартные брикеты.
Процесс выдачи выглядел магическим ритуалом.
Зашипело стравливаемое давление, и из раздаточного окна повалил густой пар. Азот. Разгерметизировались ячейки длительного хранения. На ленту выехали первые контейнеры, покрытые инеем.
— Стратегический резерв, — сообразил Виэн. — Технология молекулярной заморозки.
Толстый полимер с индикаторами температуры смотрелся инопланетным явлением. Необычные упаковки. На них сиял яркий логотип. «Золотой Век». Сквозь прозрачные крышки просвечивали мясо, овощи и шоколад. Банки с ветчиной, прозрачные пакеты с сублимированными ягодами, их нужно залить водой и вернуть им вкус лета. Брикеты настоящего, не переработанного шоколада. Время для продуктов остановилось сто лет назад. Стратегические запасы длительного хранения, созданные для переживания ядерной зимы. Разительный контраст между грязными, покрытыми язвами руками бандитов и чистотой упаковок изумлял несовместимостью. История отмоталась назад, предлагая им забытый на десятки лет кусочек своего прошлого, вакуумно упакованный в красивые коробки.
Густой дух специй резко ворвался в ноздри, чуть не брызнули слёзы. Зрачок в единственном глазе Вожака, прикованном к лотку выдачи, расширился так, что глаз стал совершенно чёрным.
Лицо утратило последнее сходство с человеческим выражением. Проявилось существо, которое сформировалось в условиях дефицита. Для Вожака содержимое коробок составляло не еду, а власть. Внутри хранились не калории и витамины, а преданность и лояльность низшего звена, право безнаказанно убивать. На лоток смотрел с благоговением, которое периодически сменяла неуправляемая животная жадность. Ноздри раздували крылья с готовностью сожрать всё, насытить желудок ещё до прикосновения еды к гнилым зубам. Вечный спутник подземелий — голод — на секунду отступил, уступил место безумной алчности.
— Давай! Заказывай! Всё заказывай! — прохрипел он, голос от возбуждения соскочил на писк.
Оператор кожей чувствовал работу камеры наблюдения в углу зала. Красный диод давно не мигал — значит, уже пишет лог инцидента. Взломщики засветились. Через десять минут здесь будет спецназ. Даже если ему не выжить, заберёт с собой большинство этих упырей. Крысы слишком тупы для понимания данных на камерах. Нужно задержать их. Завалить подарками, отвлечь, удержать на месте, пока Хищники не замкнут периметр. Дело закончит казнь, как и предполагал одноглазый бандит, но на ней бандит будет вовсе не палачом.
Виэн продолжал монотонно вводить запросы. Вожак, нетерпеливо приплясывая рядом, выкрикивал названия деликатесов, брызгая слюной.
— Вино! Сначала вино! И как это… чтоб его… вяленое мясо! И… и сладости!
РБЛ 3141 — загорелось на экране терминала. Терминал принял код. Механизм подачи сработал штатно, проигнорировал абсурдность в объёме заказа. Руки-манипуляторы из глубины стеллажей подавали выбранные товары, аккуратно выкладывая их в лотки.
Манипуляторы двигали коробки с завораживающей плавностью. Хромированные суставы роботов сгибали и разгибали сочленения, игнорировали окружающую разруху. Созданные в эпоху, когда эстетика имела значение, они и теперь, спустя годы простоя, продолжали выполнять функции доставки с механической грациозностью. Для них не существовало ни времени, ни контекста. Всё равно, кто стоит перед ней — законопослушный гражданин золотого века или грязный мародер с дубиной. Следовала правилу: «Запрос принят — товар выдан». Подобное бездумное служение злу поражало сильнее гор еды. Машина кормила убийц с той же тщательностью, с которой бы кормила и святых.
Вскоре на площадке перед супермаркетом остановился первый транспорт. Отобранные в грузчиков рабы с лихорадочной поспешностью перетаскивали коробки и пакеты в вагончик.
— Всё идёт по плану, — шепнул Гром, на секунду задержав шаг. — На плантации всё готово.
Виэн едва заметно кивнул в ответ — всё по плану.
Невольно проводил взглядом — Гром двигался сжатой пружиной, готовой в любой момент распрямиться, чтобыснести всё на своём пути. Годы унижений, побоев и голода спрессовали в нем такой плотный комок ненависти, готовый к взрыву, что Виэн против собственного желания посочувствовал бандитам — им предстояло встретиться с худшим из кошмаров. Спокойствие стоило Грому невероятного напряжения. Каждая мышца на лице окаменела, гигант превратился в живую статую возмездия. На еду не обращал никакого внимания — методично изучал бандитов, оценивая, вымеряя, запоминая.
Он сглотнул, считая удары сердца.
Визг металла о металл возвестил о прибытии второго вагона. Высыпался основной отряд — человек двадцать, вооружённых дубинками и самопалами. Бойцы рассыпались полукругом, беря площадку в кольцо. Горы провизии, выходящие из шлюза, заставили голодающих годами бандитов тотчас забыть о дисциплине. Стволы самопалов сами собой опустились к земле.
Оружие не бросили, но стволы нацелены уже не на рабов, а куда-то в пол. Бандиты перехватывали автоматы, прижимая приклады локтями к бокам. Жадность вступила в борьбу с паранойей, и громила её вчистую. Один пытался разорвать пластиковую упаковку ветчины, не выпуская из рук обрез. Пёс, вцепившийся в кость.
Момент внезапного коллективного помешательства выглядел жутко. Закалённые в стычках убийцы, привыкшие перегрызать глотки за глоток воды, обратились в толпу завороженных детей. Блеск фольги и яркие цвета упаковок надёжно парализовали волю. Крысы забыли о периметре, о безопасности, о своём нахождении на враждебной территории. Инстинкт самосохранения напрочь вытеснил инстинкт потребления. Тянули руки к лоткам, толкая друг друг и рыча, но звучал не рык угрозы — скулёж от нетерпения. Начни сейчас пальбу по ним, они бы жевать не прекратили.
В лоток выдачи высыпали банки с тушёнкой, пакеты с сушеными фруктами, батончики из злаков, вяленое мясо, консервы с овощами, сыры в вакуумной упаковке, бутылки с водой, соки, кофе, чай и мешки с корнеплодами. Бандиты малыми детьми зачарованно следили за перемещением в вагон огромных запасов еды, не виденной раньше и в мечтах. Лента продолжала выдавать сокровища. Мародёры бешено ревели от восторга.
Бандиты рвали пластиковые упаковки, не в состоянии справиться с застёжками. Содержимое — синтетическое пюре или сублимированное мясо — выдавливали прямо в грязные ладони и жадно слизывали. Сладкий сироп тек по небритым подбородкам, смешиваясь с копотью. Чавканье, хруст и утробное рычание заглушили жужжание вентиляции. Не чувствуя вкуса, поглощали биомассу, заполняя бездонную пустоту в желудках. Оператор с отвращением отвернулся: зрелище потери человеческого облика от куска сахара, вызывало омерзение.
Главкрыса получил свою упаковку вина. Откупорил её, жадно обнюхал, а затем запрокинул ёмкость. Зажмурил глаза, шумно выдыхая ноздрями. Кадык дёргался, пропуская терпкую жидкость, по подбородку текли красные струи.
— Чудо! — прохрипел он, вытирая губы тыльной стороной ладони. — Это… это… — не подобрал слова и запрокинул упаковку снова. — Ты — чудо, парень!
В загруженный до отказа вагончик поместились грузчики и самые надёжные бандиты, лично отобранные Вожаком. Вагончик тронулся с места, взял курс на плантацию. Гром ждал момента для подачи сигнала. Когда свет от супермаркета погас вдали, резко встал. Криков не раздавалось — только глухие удары и хруст костей в тесноте вагона. Рабы действовали с накопленной годами ненавистью. Расслабленная вином и эйфорией охрана не успела даже поднять оружие. Короткая, жестокая возня — и через пять минут бандиты лежали на полу, оглушенные и безоружные.
Темнота туннеля выступила главным союзником нападавшим. В кромешном мраке, где прячутся собственные пальцы на расстоянии вытянутой руки, обострились другие чувства: слух, чувство расстояния, и страх, исходящий от бывших хозяев. Рабы, знавшие каждую заклёпку в вагоне, перемещались бесшумно, стремительно, и неостановимо. Цепи и кандалы оказались во тьме опасным оружием. Бандиты паниковали, стреляли вслепую и попадали в своих же собратьев.
Вагончик прибыл на плантацию, где уже встретила толпа повстанцев, вооружённых дубинками и кирками. Рабы не стали дожидаться подкрепления, практически без потерь обезвредили немногочисленную охрану, и самостоятельно захватили контроль над периметром и въездными воротами. Победители ликовали, заглушали возгласами восторга крики возмущения пленённых бандитов.
— Вы совсем с ума сошли?! — один из них скалил зубы, брызгая слюной. — Когда основной отряд прибудет, вас всех пустят в расход! Рассчитываете выжить? Вам ничего не поможет.
Пленник вопил, чуть не задыхаясь, лицо перекосила истерика. Всё ещё верил в незыблемость старого порядка, где сила всегда на стороне жестокости. В мире, построенном на крови и страхе, бунт рабов — невозможный сбой, аномалия, и её жестоко исправят. Бандит перечислял имена головорезов из основного отряда, описывал пытки, ожидающие бунтовщиков, запугивал словами, раз уж руки связаны. Но угрозы не находили привычного отклика в людях, распрямивших спины. Страх перед возможным наказанием отступил перед пьянящим вкусом выстраданной победы, пусть даже ей предстоит продлиться всего час.
Гигант наклонил к нему сверху лицо, и пленник не встретил жалости во взгляде.
— Поможет чудо, — ответил Гром загадочно.
У туннеля, откуда ждали возвращения основного отряда, стоял заслон.
Бывший инженер по прозвищу Молчун и Гром подошли терминалу. Сидящий там бандит попытался оказать сопротивление, но в руках мелькнул кусок арматуры.
— Делай, — коротко бросил гигант, оттаскивая тело.
Молчун сел за клавиатуру. Вытащил из-за правого верхнего угла дисплея сервисный код. Пароль — Konko2125. Крыс вообще не беспокоила безопасность. Экран моргнул, переходя в режим администратора торговой сессии.
— Выставляю лоты, — прокомментировал Молчун свои действия для Грома. — Пятьсот единиц белковой массы. Срочная поставка. Цена: три ящика патронов калибра 5.45 и пять комплектов «Системы-3».
Нажал «Enter». Торговый хаб обработал запрос мгновенно. Спустя десять секунд терминал зажужжал и издал мелодичный трёхтоновый писк. Заявку приняли на аукцион. На экране выплыло сообщение в зелёной рамке — заказ подтверждён: «ЛОТ № 882 ПРИНЯТ КЛАНОМ ТЕКСТИЛЬЩИКИ. ОЖИДАЙТЕ КАРАВАН ЧЕРЕЗ 4 ЧАСА».
Гром выдохнул. Они больше не мятежники, а новое руководство, исправно поставляющее товар. С теми, кто обеспечивает поставки, не воюют. Виэн был прав.
Меж тем в супермаркете Вожак, совсем пьяный от вина и зрелища добычи, наконец обратил внимание на неизменность рейтинга на экране.
— Не меняет число! — с подозрением прохрипел бородач. — Почему?
Пришло время выкладывать карты — оператор решил говорить правду. Оставалось ждать всего пару минут.
— Мой рейтинг не падает — ведь я вне контроля, — объяснил он, не отворачиваясь от бешеного взгляда разгорячённого бандита. — Я искал данные о великом очищении, о забытом интернете, о запретных знаниях. И меня захотели стереть, но не смогли. Я — сбой, который не могут обработать.
Говорил нарочито спокойно, хотя внутри тряслась каждая жилка. Как объяснить концепцию программной ошибки существу, чей интеллектуальный багаж ограничен набором ругательств? За мутной пеленой опьянения мозг Вожака неповоротливо ворочал непривычные мысли. Бандит пытался сопоставить несовместимое: непонятные речи тщедушного парня и власть над машиной, дарующей еду. Он не понял ничего из технических объяснений, но сообразил — этому налёту не обязательно быть единственным. Пророк объясняет дикарю принцип работы зажигалки, и тот не понимает физики процесса, но уже прикидывает сжигание соседней деревни с помощью волшебного огня.
Бандит недоумевал. Примитивный разум не вмещал отвлеченные материи. Истинная ценность информации от него ускользала, но доступная примитивному разуму идея захвата проступила ещё отчётливее.
— Вот выходит как. Значит… — мародёр расплылся в отвратительной улыбке. — Значит, ты — бесконечный источник еды! Я же говорил, ты — не ценность. Ты… чудо!
Бандит поднял самодельное ружье.
— Ты будешь со мной всегда. В моём личном рабстве. И никому не скажешь. Ни одной живой душе. А во избежание лишней болтовни…
Бородач вытащил из-за пояса огромный кривой нож. Виэн сжался. Играм конец. Пьяный бандит приближал лезвие к лицу. Пьяный взор мутно расфокусирован, но на ногах пока стоял уверенно и на полном серьёзе хотел вырезать пленнику язык.
Лезвие ножа покрыто ржавчиной и засохшими бурыми пятнами — следами прошлых разговоров. Вожак упивался властью, растягивая момент. Бандит очень любил страх в жертве, обожал роль вершителя судеб. Кроме того, уже представлял посаженного на цепь волшебника, которого кормят объедками и заставляют раз за разом вызывать чудо-машину. Извращённый мозг рисовал картины дикого обжорства и неограниченной власти над всеми подземельями. Оператор чувствовал зловонное дыхание бандита и понимал — ни логика, ни уговоры не помогут. Перед ним стоял не человек, а ненасытная утроба на двух шатающих тело ногах.
Снаружи раздались крики и выстрелы. Грохот взрыва. Пол под ногами дрогнул, с потолка посыпало штукатуркой. Оба синхронно пригнули головы, присели за стеллажами. Раздался ещё один взрыв, ближе и громче.
Бандит осторожно проверил площадку перед супермаркетом через окно. Кровь отхлынула от лица бандита, шрам выделился в багровую полосу. На площадке шла методичная зачистка. Отряд Крыс истребляли на глазах. Чёрные шлемы мелькали в тусклом свете, оружие работало без промаха, тела падали срубленными деревьями.
Происходящее на площадке выглядело работой хирургов, вырезающих опухоль. Хищники работали с обычной для них нечеловеческой скоростью, без единого лишнего движения. Не искали укрытий, не кричали друг другу — просто шли вперёд, сея смерть. Бандиты, привыкшие запугивать безоружных, оказались беспомощны против военной машины. Самопалы и дубинки представали смешными игрушками против брони высшего класса. Тела разлетались на куски. Стоял тошнотворный дух горелого мяса. Безжалостно выверенное уничтожение живой силы противника. Вожак наблюдал за гибелью армии, за разрушением собственного маленького мирка, построенный на насилии.
Рывком обернулся к пленнику.
— Ты! — прорычал с ненавистью. — Ты заманил нас в западню! Ты мертвец!
Поднял ружье, нацелил в голову. Но выстрелить не успел.
Дверь супермаркета распахнулась. В проеме возникла высокая фигура в тёмном комбинезоне и шлеме. Секунда, вспышка и пуля разнесла голову бородача, тот мешком повалился на пол.
Хищник тут же перевёл прицел. Красный луч остановился на груди Виэна. Тот омертвел, понимая, это — конец.
Глава 18
— Стой! — выкрикнул оператор, когда красный прицел застыл. — Стой! Я гражданский! Проверь код!
Он мотнул головой в сторону терминала выдачи продуктов, где по-прежнему горела надпись: РБЛ 3141.
— Я — законопослушный гражданин, — продолжил он, голос звучал резко, но уверенно. — Меня обманом заманили сюда и заставили выполнять их требования. Эти Крысы… они — каннибалы!
Ствол чуть опустился. Динамики передали голос скрежетом.
— Ложь. Твой номер аннулирован. Мы отправлены по следу нарушителя.
Мысли лихорадочно заметались в поисках выхода из ситуации. Надо убедить эту бронированную смерть, иначе всё кончено.
— Я сам инициировал процедуру обнуления! — выпалил он. — Как ещё я мог поступить для привлечения внимания высшего уровня? Разве бывает падение сразу на три тысячи единиц? Нет! Не нарушение, а сигнал бедствия по коду «Омега»! Я внедренный аудитор, и моя миссия засекречена даже от боевых единиц! Если ты выстрелишь, то уничтожишь единственного носителя информации о критической уязвимости сектора! Такой идиотизм может привести к полному обнулению!
Горячечная чушь вырвалась из горла раньше, чем успел продумать, как её продолжить. В безумной болтовне был только инстинктивный расчёт на человека под шлемом — солдата, доведённого муштрой и инструкциями до статуса функции. У солдат чёткие инструкции на случай агрессии, побега или мольбы о пощаде. Но в уставе наверняка нет параграфа, описывающего действия при работе с несуществующими засекреченными аудиторами. Надежда получить человеческую реакцию на абсурд ситуации и на то, что это заставит палача задуматься, выпасть из роли бездумного исполнителя, и исполнение приказа отложится до выяснения подробностей происходящего.
Пауза продлилась недолго, но показалась вечностью.
— Проверь мой заговор, — предложил пленник, с трудом удерживая равновесие. Его последний шанс.
Дуло винтовки уставило в лицо бездонный провал. Виэн физически ощущал накопление энергии в недрах оружия. Угроза, с которой бесполезно спорить. Сама неотвратимость, неизбежность, спрессованная в металл и направленный в грудь энергозаряд. Такой боец не дрогнет, палец у него не вспотеет от волнения. Одно микроскопическое движение сервопривода — и от Виэна останется облачко перегретого пара и горстка пепла на полу. Муравей под занесенным ботинком, убеждающий не опускать подошву. Каждый удар сердца гулко отдавался во всём теле.
— Здесь не работают внешние сканеры, — после долгой паузы прозвучал ответ. Вроде с сомнением. Это хорошо.
— Я назову тебе код устройства, расположенного в катакомбах, и ты сможешь отослать запрос через него. Ты же можешь активировать?
Красный луч медленно сполз с груди. Погас. Ружьё опустилось, из прорези комбинезона возникла тонкая полоска внутреннего коммуникатора связи, потерялась в центре протянутой громадной ладони.
Ввёл зазубренный назубок код устройства беглеца. Хищник стащил перчатку, прислонил отпечаток пальца. Коммуникатор пискнул, отправляя данные. Оба молча ждали.
Секунды капали кислотой. Оператор сосредоточил всё внимание на мигающей панели, боясь моргнуть. А если Андрей уже далеко? Если выбросил телефон, или тот разряжен, или сеть не ловит? Жизнь висела на тонкой и невидимой ниточке радиосигнала, отправленного сквозь толщи земли и равнодушия. Он абсолютно беспомощен и зависим от воли человека, виденного один раз в жизни на экране. Ожидание хуже самого расстрела — там всё решено, а сейчас надежда медленно умирала, уступая место одиночеству.
Ещё два коротких писка.
— Активировано.
Контакт установлен. Проблема не в связи в туннеле, а в отсутствии регистрации устройства беглеца в общей сети, но Хищник должен сам увидеть неисправность среды и поверить в уловку. Сообщение уйдёт, сработает наложенный маркер и устройства обменяют координаты.
— Отлично. Пусть передадут сообщение. Текст «твоя очередь».
Тот недолго помедлил — текст сообщения звучал довольно странно, но затем всё же пожал плечами, и набрал несколько символов на коммуникаторе. Писк отправки. Ожидание. Пиликанье.
— Ответили. Одним словом.
-Каким словом? — спросил, и задержал дыхание.
— Да.
Едва смолк писк полученного сообщения, в супермаркет вбежал ещё один боец. Не такой рослый, но зато ещё стремительнее. Обмен короткими шифрованными сообщениями пролетел между ними. Ни гласных, ни согласных, ни интонаций. Из внешних динамиков вырывались короткие, резкие трели. Высокочастотный скрежет модемов, похожий на писк летучих мышей. Пакетная передача данных, сжатая до предела. Не разговор, синхронизация. Задержанного пробрала дрожь: диалог подчеркивал пропасть между ним и этими существами. Обсуждали его судьбу, но он не понимал ни слова и даже не мог догадаться о сути разговора по интонациям. В речи не звучало ни эмоций, ни сомнений — только обрывками узнавались слова: «цель», «актив», «стереть».
Второй недоверчиво просканировал добычу, но первый, судя по всему, объяснил ситуацию.
Его не связали, но держали на прицеле взглядов. Сомнения во взгляде за непроницаемыми шлемами ощущались, как направленный лазер.
Хищники двигались пугающе плавно. Виэн спотыкался о разбросанные банки и обломки стеллажей, а они перетекали через препятствия. Без лишних движений и суеты. Тяжёлая броня на телах казалась невесомой. Не шагали, скользили, постоянно контролируя сектор обстрела, не поворачивая голов. Абсолютно выверенная точность каждого жеста — не солдаты, ходячее оружие — оптимизированные инструменты войны. Рядом с ними — неуклюжий мешок с костями, бракованная биологическая единица, временно допущенная к существованию. Контраст между бесшумными выверенными движениями сопровождающих и его неуклюжим топотом обескураживал — у него нет и намёка на шанс при попытке побега.
Втроём вышли из супермаркета. оставив позади разграбленные стеллажи выдачи. На площадке царил разгром и тишина, нарушаемая редкими потрескиваниями остывающего металла. Повсюду валялись убитые бандиты. Чёрные фигуры безэмоционально подтаскивали тела к краям и сбрасывали в водостоки.
Командир поднял голову в шлеме с оранжевой полосой, увидев пленника. Встал, преграждая путь.
— Надо отвезти на поверхность, — прогудел первый сопровождающий. — Проверить связь с активным Заговором. Не работает сканер.
Его усадили в задний отсек приземистой машины. Машина бесшумно заскользила по рельсам туннеля к выходу на поверхность, прочь от разгромленного супермаркета и убитых Крыс.
Интерьер машины походил на внутренности сложного медицинского прибора. Белые матовые панели, мягкий, бестеневой свет, льющийся отовсюду и ниоткуда. Без сидений или поручней — только углубления с повтором контуров брони, и магнитные фиксаторы. Чистый кондиционированный воздух, лишённый пыли и гари боя в подземелье. Десятки слоёв фильтрации убили в нём всё живое. Тихо, лишь едва слышное гудение магнитных подушек нарушало покой. Лабораторный образец, помещённый в контейнер для транспортировки в зону утилизации.
Внутри машины стояла прохлада. Двое сопровождавших сняли шлемы. Открылись молодые лица парня и девушки, лет по двадцать пять. Бледные и уставшие, умные лица. Живые лица. Ни следа мертвой маски граждан поверхности.
Он ожидал встретить под шлемами кибернетические импланты, шрамы, пустые лица фанатиков или стариков, продливших жизнь технологиями. Но не обычных ребят-сверстников. Шека парня промял ремень шлема, у девушки ко лбу прилипла выбившаяся прядь волос. Напоминали ребят, вышедших со смены на заводе или с лекции в университете. Диссонанс между их юностью и человечностью с силой, показываемой в броне, ударил сильнее, чем всё происшедшее. Эти двое могли бы быть его соседями, пить с ним синтетический квас, а пошли в палачи.
— Меня зовут Кай, её — Ада, — произнёс парень обычным голосом, без искажения. — А ты — нарушитель, который искал данные о великом очищении.
Хищница усмехнулась на изумлённую оторопь пленника.
— Мы не глупые цепные псы, хоть нас и отправляют на дрессировку щенками. Тех, у кого нет будущего, чей РБЛ при рождении равен нулю. Нам дают цель, еду, тренировки… и имплант. Мы сильнее других. Но мы тоже на поводке. Пока мы получаем постоянный, авторизующий сигнал, мы в порядке. Стоит сигналу пропасть — и привет, ломка. Боль, дезориентация… наши собственные тела предают нас. Мы не слепо верим. Мы не хотим умирать в агонии.
Она потрогала затылок, там, где под кожей угадывался контур разъема. Её пальцы дрогнули. Имплант не дозировал гормоны или стимулировал мышцы. Перехватывал сигналы от мозга к телу. Без связи с сервером генерировал фантомные боли такой силы, что человек сходил с ума за минуты. А потом отключал вегетативные функции. Поводок, затянутый прямо на стволе головного мозга.
— Вы всё знаете, — невольно выпалил оператор. — И вы так молоды.
— Мы не сами выбрали броню! — горько усмехнулась Хищница, рассматривая ладони. Без бронированных перчаток пальцы оказались тонкими и изящными. — Нас отобрали ещё в приютах нижних уровней. Статус G_N — «Генетический Ноль». Социальный мусор. Система дает нам всё: лучшую еду, чистый воздух, силу, доступную только избранным. Но взамен сажает на поводок.
Первый тоже коснулся затылка, под кожей отчетливо проступал прямоугольный контур.
— Похож на рацию, но не она, — глухо произнес он. — Биохимический контроллер. Имплант постоянно запрашивает у Ядра авторизационный ключ. Если сигнал подтвержден, мы получаем дозу эндорфинов и стабилизаторов. Но при уходе в слепую зону и пропуске проверки… включается нейроблок. Сначала — дикая боль в суставах, потом — отказ почек, галлюцинации и смерть в течение суток.
Она посмотрела арестованному прямо в глаза.
— Мы не лояльны правителям. Мы лояльны выдаваемой дозе. Но ты искал данные о том, по уверениям наших начальников, найти невозможно. Если ты нашёл нужную информацию, может быть, найдешь и способ снять наши ошейники. Мы рискнули не ради тебя. Мы рискнули ради шанса стать людьми, а не боевыми функциями на поводке.
Её напарник кивнул в подтверждение.
— Мы тоже ищем ответы. Истинная история, методы изоляции. Нас это тоже интересует. Наши рейтинги позволяют нам выживать, получать пайки, но не более. Мы винтики в механизме, хоть и вооружённые. Мы тоже хотим выйти из-под контроля, но нам это труднее, чем тебе, потому что мы являемся его частью. Если ты не сможешь нам помочь, мы отдадим тебя. Извини.
Все в одной лодке, факт не требовал доказательств. И похожи на него самого — умные, ищущие, но запертые в клетке рейтинга.
Мощный удар подбросил машину. Раздался оглушительный скрежет металла, грохот обрушения. Машина резко остановила ход, пошла юзом. Сверху на крышу полетели камни.
— Мина! — раздался крик. — Осторожнее. Там ещё!
Машину опять сотряс удар чудовищной силы. Магнитное поле, удерживавшее многотонную машину, схлопнулось за долю секунды, когда нос капсулы влетел в завал. Инерция катапультой швырнула вперёд. Ремни безопасности полоснули плечи. Оглушительный визг обшивки, раздираемой о стены туннеля, заглушил всё. Ровный белый свет погас, сменился тревожным красным мерцанием аварийных ламп. Колеса сошли с направляющих. Капсулу накренило, и с грохотом завалило на бок железной ловушкой.
Они попали в засаду. Туннель впереди и сзади завалили огромные кучи камня. Послышались голоса и топот.
— Нападаем! — прорычал водитель, хватая шлем. — Приготовиться!
Он распахнул двери машины. Из темноты хлынула толпа. Десятки фигур, вооружённых самодельными ружьями, дубинками и ножами. Солдаты ждали в засаде, использовали завалы в качестве ловушки.
Атака была совершенно внезапной, но Хищники всё равно успели среагировать. Кай и Ада, уже в шлемах, выскочили из машины. Мощные винтовки тотчас нашли цели. Стук выстрелов, удары, шипение лазерных выстрелов, крики раненых — все звуки слились в сплошной грохот бойни снаружи.
Битва не шла на равных — в бою столкнулись разные стихии.
В наэлектризованном пространстве туннеля системы наведения каскадами выдавали ошибки. Обилие металлических конструкций и сырость создавали интерференцию, а эхо от выстрелов порождало акустические баги, перегружало сенсоры шлемов. То, что машины смерти, привыкшие к открытым пространствам, здесь вынуждены полагаться на ручное управление, уравнивало шансы с безумной, напирающей массой.
Солдаты больше не использовали укрытия и не берегли патроны. Атаки накатывали волнами, нападающие оглушали истошными криками. Один падал под ударом, но двое других уже перепрыгивали через его тело. Брали не умением, живой массой и готовностью к самоубийству. Технологическое превосходство вязло в живой плоти. Оружие не успевало отслеживать цели. Боевая машина захлёбывалась, не справляясь с напором.
Выстрелы оставляли обугленные раны. Хищник точным попаданием снёс голову одному и тут же, нырком уйдя от удара дубиной, припечатал другого, пробив выстрелом насквозь. Их оружие разработали, чтобы не оставлять шансов.
Солдаты лезли со всех сторон. Драка перешла в месиво. Кровь брызгала, тела падали, но атака всё усиливалась.
Виэн скорчился в машине, прижал голову к полу, закрывал руками от пуль и осколков. Битва оглушала. Нельзя было понять, кто побеждает. Крики прерывали короткие, отрывистые выстрелы.
Раздался влажный, чавкающий удар, и тёмная фигура упала.
— Ада! — рёв перекрыл звуки боя.
Отбиваясь сразу от нескольких врагов, Хищник рвался тянулся к спутнице, но его отбросили назад. Толпа накинулась со всех сторон. Со стороны — жуткое зрелище: боевая единица, вязнущая в живой, агрессивной массе. Удары сыпались со всех сторон, не давая ни секунды на передышку. На руке с оружием повисли сразу трое, ещё один с хрустом ударил трубой под колено.
Оказалось, у засады были не только палки. Сверху, с нависающих конструкций туннеля, упала ржавая сеть из тросов для улавливания вагонеток. Накрыла, сковав движения сервоприводов. Хищник рвался из неё, но сеть опутала суставы брони.
— Валите! Ломайте броню! — ревели голоса.
Люди набросились на обездвиженного врага. По армированной броне не били — бесполезно. Заливали шлемы краской из пульверизаторов, били ломами по коленным суставам, где броня тоньше, и вгоняли клинья в сочленения шлема, срывая герметизацию. Ослеплённый и связанный, он отбивался, но тела задавили массой. Лом пролез под пластину на шее. Раздалось шипение разгерметизации. Судорожно дёрнулись длинные ноги. Обмяк.
Машина покачнулась от очередного удара. Битва стихла, перешла в редкие стоны и глухие удары. Виэн закрыл лицо ладонями. Сейчас и его добьют. Кто победил? Он не знал.
Дверь машины медленно отворилась. Пленник сжался, не решаясь поднять голову. Кто откроет дверь? Крыса? Или Хищник, желающий отомстить?
Дверь открылась — в проёме появился беглец. Тот самый.
Лицо покрыто копотью и сажей. Рядом с ним стояла очень красивая девушка, сжимая в руке заточенный кусок арматуры. Покивала в подтверждение каким-то своим мыслям, обнаружив пленника.
Беглец не походил на спасителя из легенд. Ни героической позы, ни пафосных речей с высокомерием в лице. Стоял он сутуло, тяжело опирался на приклад дробовика. На лице — разводы копоти, вокруг век — круги от бессонницы. Одежда пропитана потом и чужой кровью. Спасённого встретила не радость, а облегчение человека, закончившего грязную работу. Так встречают не друзей, а сообщников, выживших в катастрофе. Прагматичная, суровая реальность.
— В расчёте, — прохрипел беглец сорванным голосом. — Скажи ей спасибо. Угадала коллектор, куда тебя потащат. Бежали наперегонки. Еле успели.
— Не угадала, а вычислила, — добавила спутница.
Оператор поднялся, с трудом распрямился.
— Ты, — прошептал он одними губами.
— Я, — кивнул беглец. — Андрей Кварцев. Мы пришли за тобой.
Пленник с трудом вылез из покореженной машины. У машины были разбросаны тела. Хищники дали отчаянный бой, но все же не смогли преодолеть такой натиск.
— Не поспоришь, — повторил он, изучая разгром на поле битвы, — в расчёте.
В нём зарождалось новое чувство. Не надежда, уверенность. Бывший цифровик, брошенный на произвол судьбы, беглец, и сотня оборванцев из катакомб. Именно таким командам должны выпадать шансы изменить мир.
Часть 4. Вместо земли. Глава 19
Сквозняк ударил в спину и обжёг холодом влажную шею. Поёжился — прохладно. Свежий очищенный воздух, с оттенками земли и корней. Рефлекторно задержал дыхание — тело, привыкшее к рециркуляту, отказывалось вдыхать непредсказуемую смесь. Без климат-контроля. Ветер летал рывками, покорный не приказам вентиляции, а капризам давления в гигантской лакуне. Унося затхлость, взамен приносил испарения мокрой земли. От них жгло в лёгких и всё время тянуло откашляться.
Перед ними разверзлась гигантская полость, уходящая террасами в подземную тьму. На ближайших ярусах зеленели аккуратные ряды посадок. Где-то в глубине гудели старые генераторы, вибрация наполняла пространство, отражаясь от сводов.
Под потолком висело нагромождение из желобов и труб водопровода и вентиляции. Прищурился, мысленно разбирая переплетения на составные элементы и крепления. Инженерный кошмар, могущий вызвать сердечный приступ у любого техника. Механизм орошения собрали из шлангов гидравлики от шагоходов и прозрачных медицинских капельниц. Вместо стандартных радиаторов отопления вдоль грядок тянулись вскрытые корпуса серверных стоек — местные изобретатели догадались использовать теплоотдачу для обогрева корней.
Энергоузлы организовали ещё безумнее. Узнал синие цилиндры — промышленные конденсаторы от грузовых дронов, переделанные в генераторы и соединённые в опасную цепь. Работали на пределе, сбрасывая лишнее напряжение на кустарные лампы фитосвета. Одну из скруток пробило искрой и оператор отшатнулся, ожидая разрыва дуги, но хлипкая паутина из хлама оказалась прочнее, чем смотрелась. Не работала — бросала вызов всему, чему его учили.
Ниже всё находилось в непрерывном и хаотическом движении. В разные стороны, чуть не сбивая с ног, катили разнообразные тележки с урожаем. Со всех сторон стрекотали то ли ткацкие, то ли столярные мастерские. Пространство полнилось тяжёлыми и густыми ароматами. После рафинированной атмосферы Верхнего уровня такая концентрация органики оглушала не хуже взрыва. Запах свежего горячего хлеба и горьковатый дух хмеля создали такую плотную волну, что натренированный на три базовых синтетических аналога мозг сходил с ума от вкусового спектра. Голод спазмически сжал желудок, получивший сигнал раньше носа.
Загудела от напора широкая труба. Проводил взглядом толстый ржавый коллектор: мутная жижа входила в блок фильтров, собранных из корпусов промышленных кондиционеров, а с другой стороны, по тонким прозрачным трубкам, уже бежала чистая вода. Рядом в бункере переработки ворочались огромные шнеки, перемалывая органику в бурую массу, уходящую по ленте к грядкам. Похоже, цикл замкнули намертво — ни капли мимо.
— Невероятно организовано, — искренне восхитился Виэн.
И всё же логика не сходилась. Оценил размеры пространства. Пещера велика, но не бесконечна. Прожекторы вдалеке установлены на стенах, то есть до них метров сто, не больше. Жилых блоков слишком мало. Из мастерских звучал неритмичный фон ремонтных работ, а не монотонный — штампованного цикла производства. Здесь поддерживали жизнь, но не создавали ничего по-настоящему сложного. Нигде не видно ни грузовой техники, ни больших складов, ни мощных энергетических узлов. Похоже на жилой отсек огромного корабля, но где тогда хранится сам корабль? Где машинное отделение, мостик и арсенал?
Генераторы он заметил сразу — старые, даже древние, судя по форм-факторам, работают на пределе мощностей. Провода кустарные, искрят. Тепло уходит в камень. По логике, КПД должен быть ниже плинтуса. Потери энергии на самодельных линиях передач должны быть колоссальными. Сообщество должно давно погибнуть, исчерпав энергию и захлебнувшись собственными отходами.
Уравнение не сходилось. Входящей энергии меньше, чем потребляемой. Так не бывает. Лампы горят, генераторы гудят, но откуда берут энергию? Чувствовался подвох, баг, упорно игнорируемый программой, такие рано или поздно ломают всё вокруг.
Толстые кабели уходили в пол, гудя от напряжения. Оператор сообразил — они не вырабатывали энергию сами, а паразитировали. В глубине кабель врезан в геотермальную магистраль, гигаватты исчезают до попадания к счётчикам города. Дерзкая кража еду со стола из-под носа у подслеповатого великана.
— Голодный? Яблоко хочешь? — окликнул один из бойцов.
Парень сплюнул под ноги и указал на ближайший ящик, где лежали бугристые, неравномерно окрашенные плоды.
— Чего смотришь? Небось, у вас сверху такой дряни не найдешь, — боец сорвал плод и швырнул гостю. — Хватай. Не отравлено.
Виэн поймал плод. Тёплый и неровный на ощупь. Сглотнул слюну и откусил. Сморщился от ощущения кислоты в горле. Отсутствовало послевкусие химической сладости, вместо него рот опутала терпкая, землистая горечь, настолько насыщенная, что казалась ядовитой. Заныли зубы, привыкшие к гладкой и однородной пище, спроектированной для усвоения без остатка. Проглоченный кусок оказывал сопротивление. Приходилось жевать, с трудом разрывая волокна, чувствовать текущий по языку сок, раздражая рецепторы, спавшие годами. Во рту появилась вязкость, свелись в спазме, а слюнные железы, ошарашенные кислотной атакой, заработали с утроенной скоростью в попытке смыть агрессивный вкус.
Привычная еда имела два ключевых признака: номер калорийности и цвет упаковки. А съеденный мусор — жил. Рос в грязи, пил гнилую воду и боролся с соседними ростками за свет ламп и за микроэлементы в почве. И захватывающей легендой передавал свою жажду жизни, падая в желудок. Не простое насыщение едой — грубая, просто головокружительная инъекция жизненной силы. Оператор вдруг осознал — всю жизнь он не насыщался, а заполнял желудок.
Боец наблюдал за реакцией, посмеиваясь.
— Ну, цивилизованный? Сносит башню от ароматизатора «Жри пока дают»?
Жители здесь тоже были другими.
Только сейчас сообразил, в чём главное отличие от верхнего мира. Его впервые окружал не монотонный фон механизмов, а человеческий гомон. Громкий смех, обрывок жаркого спора у тележек с породой. Женский голос напевал в полный звук. Все постоянно разговаривали. Громко и эмоционально.
А ещё — не выровненные движения. После выверенной динамики верха, с оптимизированными и лишёнными лишних жестов взаимодействиями, он каждый раз подпрыгивал от резких взмахов и звуков.
Взрыв хохота опять заставил шарахнуться в сторону. Обгонявшие двое мужчин не спорили — орали друг на друга, размахивая руками перед самым носом. Лица красные, жилы на шеях вздулись.
— Ты мне резьбу сорвал, криворукий упырь! — ревел один.
— Сам ты упырь, кто ж так держит! — огрызнулся второй.
Прибывший втянул голову в плечи, ожидал воя сирены и прибытия дрона-усмирителя. Мышцы сами собой напряглись в ожидании парализующего разряда. Задрал голову, высматривая под сводами красные огни дронов-усмирителей. Сейчас пометят лазером. Распылят газ.
Но потолок оставался тёмным.
Наверху за такой уровень агрессии полагалась принудительная медикаментозная терапия. А какое наказание здесь — страшно и представить…
Первый мужик неожиданно прекратил орать, замахнулся и… хлопнул второго по плечу.
— Ладно, черт с ней. Переточим. Пойдём закусить чего-нибудь.
Нет сирен. Нет штрафов. Безнаказанность эмоций пугала больше, чем темнота туннелей. Всё наэлектризовано грубыми чувствами — сырыми и нефильтрованными.
Наблюдая за яростными спорщиками, на секунду вспомнил Толика в «Улье» и его панический страх от простого уведомления. Толик боялся дышать глубже, чем положено, чтобы датчики не зафиксировали несанкционированную нервозность. А вокруг жили, кричали, ругались — и никакие сирены не орали.
Увиденное противоречило вбитой в подкорку базовой логике выживания. Миллион мелких нарушений сплетались в устойчивую, но работающую структуру. В Коньково царил страх, превращающий рабов в тягловых животных. Тут царил беспорядок, превращающий свободных людей в… кого?
Коньково!
Виэн споткнулся на ровном месте. Нога подкосилась, сигнал от мозга не добрался до мышц. Мысли, вязкие из-за контузии, вспыхнули паникой. Какая там сейчас обстановка? Хищники разнесли Крыс в лоскуты, но Гром и отряд — справились ли они? Воспользовались шансом или погибли?
Бурление гомона вокруг било по нервам. Контраст с миром рабских плантаций был слишком резким для измученного сознания. Голова закружилась. Он дал им шанс, но выжили ли они?
Новость о вылазке и спасении «человека сверху» уже разнеслась по убежищу. Вновь прибывший чувствовал за собой постоянную слежку. Его сопровождало не только любопытство. В одних встречных реакциях читалось недоверие, в других - надежда, в-третьих - простая оценка: стоит ли пришлый оборванец жизней не вернувшихся из рейда бойцов? И чаще читался отрицательный ответ.
Особенно напряжённый поток внимания шёл от женщины, сортировавшей травы. Женщина отложила пучок зелени, уставилась на него в упор. В её неподвижности не проявилось ни оценки, ни интереса — во взгляде глухая, выжженная тоска. Фокус внимания направился не на него, а на пустое место, им занятое. Возможно, вспоминала кого-то, кто тоже когда-то явился сверху и не принес ничего, кроме беды.
Переключил внимание на группу мужчин, занятых разборкой старой горнопроходческой машины. Металл звенел от ударов, искры летели в стороны, но работа кипела.
— Круто? — хмыкнул спаситель. — Ты ещё низы посмотришь. Они тут реально неплохо обустроились.
Оператор помедлил, решительно сорвал с шеи цепочку. На ладонь выпал поцарапанный прямоугольник — личный архив.
— Здесь всё, — тихо произнес он, протягивая накопитель. — Всё вытянутое из мусорных секторов за пять лет. Логи стирания, фрагменты личных переписок, отчеты об Очистке. Многое зашифровано. Я не смог прочесть и половины, система блокирует открытие, но всё равно скопировал.
Тот принял флешку.
— Дай мне пару часов, я попробую снять дамп.
— Это и есть ваш спасённый спаситель? — послышался голос из-за спины.
Виэн попытался поднять голову, и поплыл. Ноги обмякли, земля ушла из-под них. Рухнул бы навзничь, но Андрей в последний момент резко подставил плечо, приняв вес.
— Вот чёрт, — стиснув зубы, процедил он, с трудом удерживая шатающегося спутника. — Соберись, вот-вот дойдём. Не раскисай ещё минут пять.
К ним подходил высокий мужчина, с ровно прочерченной на висках сединой. Приближался размеренным шагом, игнорируя грохот ремонта и летящие неподалеку искры. Движения плавные, никакой суеты, сразу видно — хозяин обходит владения, где контролирует всё, вплоть до распоследнего ржавого гвоздя.
— Учитель, — коротко представился он. — Значит, добрались. Твой упрямый приятель выгрыз экспедицию твоего спасения зубами. Заставил дать людей, рискнуть маскировкой. Мы полчаса орали друг на друга. Надеюсь, ты стоишь наших нервов и ресурсов. Уголки губ чуть дрогнули, смягчая жесткость слов, но взгляд не изменился — остался подозрительным и цепким.
Его появление быстро и неуловимо изменило обстановку, одновременно расслабило людей и сосредоточило внимание. Боец с царапинами на лице откровенно хмыкнул. Двое других переглянулись, задержали взгляды, покачали головами. Непроницаемые лица, но оператор, привыкший считывать малейшие нюансы, уловил напряжение и недоверие. Для них он не спаситель, а новая проблема.
— Я могу оказаться… - слабо отозвался он. Слова выходили с трудом, распухший язык едва слушался. — … полезным. Меня зовут Виэн. От меня может быть толк.
Он попытался выпрямиться, но новая волна головокружения заставила согнуться, чуть не бросив на пол. Андрей перехватил под руку.
Собрав остатки сил, он поднял голову и пробормотал:
— Рейтинг. У меня уникальный рейтинг. Невысокий, чуть выше трёх тысяч, но всё равно можно использовать, не заблокировали.
Второй раз за последний час открывал тайну, свято хранимую всю жизнь, но сейчас был уверен — рассказывает не зря.
Собеседник на секунду отвлёкся на задраивание шлюза. Через него раньше привели гостя, а теперь замуровывали обратно.
— Пожалуй, пригодится. Мы не полностью отрезаны от мира. Иногда мы выходим на поверхность для торговли с такими же отшельниками. За три тысячи можно получить многое. Лекарства, инструменты… мы многое не можем произвести сами.
— Не за три тысячи, — помотал головой. — Три тысячи — только лимит. Сам рейтинг никогда не падает и не повышается, сколько ни трать.
Учитель чуть склонил голову, изучая визитёра, будто деталь механизма, нуждающейся в проверке на прочность перед использованием.
— Интересно, — ровным тоном произнес он, внимательно наблюдая за гостем. — Очень интересно. Такая аномалия. Не связана случайно с «Гамма-7»? Активированным во время зачистки Сектора Знаний?
Оператор нахмурился, на лице промелькнуло искреннее недоумение. Про ликвидацию ячейки Книжников уже слышал от Степана, но без подробностей. Название незнакомое.
— Я сам не знаю, с чем это связано, — честно ответил он. — Просто всю жизнь так живу. А Гамма-7…
Он запнулся, перебирая в памяти тысячи файлов. Очистка секторов. Утилизация памяти. Методы сброса.
— Нет, — твёрдо ответил он. — При зачистке Сектора Знаний не могло быть «Гаммы». Там могли использовать только стандартные «Омега», первый или четвёртый уровень. Полное физическое устранение всех носителей данных и их обладателей. А «Гамма» — вообще для архивации. Не применяют к живым. Ерунда какая-то.
Бойцы напряглись, руки задёргались, шаря по оружию. Назвать слова лидера подполья ерундой — дерзость, граничащая с самоубийством.
Но Учитель вдруг улыбнулся. Уголки век собрались в морщинки, и напряжение ушло.
— Верно, — отозвался он. — Шпион заюлил бы или согласился. Не решился бы спорить. Ты же меня поправил. Да и знания у тебя настоящие. Впрочем, неважно, — подытожил он. — Мы решим это позже. Обустройте нашего гостя. Отведите в Гостевой сектор, ему нужен отдых. Потом жду вас обоих в камине. Мы познакомим тебя с нашим миром. Я встречу вас там.
Он кивнул обоим, развернулся, и отправился куда-то вглубь комплекса. Виэн растерянно смотрел вслед. Голова гудела, слова путали мысли.
— В камине? — еле слышно пробормотал он.
Андрей криво усмехнулся.
— Они тут на англицизмах помешаны, — негромко пояснил он. — «Come in». Вход, общая зала. Прихожая, по-нашему.
— На чем помешаны? — переспросил, но ответа уже не ждал. Пол снова закачался, и он обмяк, едва не теряя сознание.
Чужие руки с трудом удержали от падения.
— Пойдем, тебе нужно к Анне.
Он поволок на себе ослабевшего гостя вглубь коридора, туда, где тускло светился красный крест. Тот едва переставлял ноги, но всё же успевал замечать немыслимые наверху детали быта. Неодинаковость дверей в жилых блоках. На одной висел кусок яркой ткани. На другой углем нарисовано смешное животное. У третьей стояли стоптанные ботинки разного размера.
Наверху личное пространство — койка и терминал. Любой лишний предмет — мусор, нарушение порядка. Здесь же царил повсеместный бардак. И бардак кричал: тут живут люди, а не функции. У каждого собственная нора, отметки, право быть не похожим на соседа. От пёстрого разнообразия у привыкшего к униформе кружило голову сильнее, чем от пережитых взрывов и ударов. В «Улье» индивидуальность была дефектом, программным сбоем, мешающим стандартизации. Если у 402-го на столе возникала царапина, стол меняли. Если оператор плохо работал, меняли человека. Идентичность — враг порядка. А здесь каждый метр пространства кричал: «Я существую! Я — не такой, как другие!».
Вонь и ароматы, жареный лук и тухлые овощи, крик перекрывал чей-то кашель и переругивание. Вокруг оглушительно гомонила жизнь. Заметил криво прибитую табличку с надписью «Берлога Петровича» и внутри разломился последний барьер. Его сковал страх. Прежний призрак с РБЛ 3141 прятал в невидимости свою безопасность. Здесь же, среди ярких тряпок и громких голосов, будет необходимо обрести собственное лицо. Стать кем-то конкретным. И ответственность за это пугала сильнее, чем все пули, вместе взятые.
Глава 20
За дверью с тусклым красным крестом спрятался медицинский модуль. Небольшая комната, залитая светом флуоресцентных ламп, закрепленных под потолком. Медицинский отсек выдолбили прямо в базальте, грубо облицевали упаковочным материалом.
Слабые вентиляторы не могли разогнать застойный дух. Пахло влажной каменной крошкой и химией растворителей.
Вместо закрытых стеллажей — открытые полки с контейнерами, резкий дух трав вместо химии и рабочий беспорядок, названный бы халатностью в прежней жизни. Скользнул взглядом по поддонам. Ничего одноразового. Грубо обработанная сталь инструментов: пинцеты с царапинами на боках, похожие на портняжные ножницы, и толстые иглы шприцов с мутноватыми стеклами колб, кипячённых сотни раз — они и сейчас отмокали в тазу, от которого шёл горячий пар. Моток суровых ниток — такими зашивают мешки, а не живую плоть.
В углу в ещё один жестяной таз размеренно и уныло капал конденсат.
Яркий свет подсвечивал каждую пылинку. Виэн поморщился от смеси переработанной вентиляцией духоты, жженой резины и старых бинтов.
Лампы гудели на мерзко высокой частоте, вызывавшей нытьё в висках. Свет не добавлял чистоты. В резком сиянии пыль поднимала белую взвесь, в стыках плит на полу отчётливо проступала плесень, намертво проевшая камень. От спёртости фильтрованного сотни раз воздуха подступала к горлу тошнота. Помещение походило не на больничный сектор, а на тюремный изолятор, где никому не дают умереть раньше конца срока.
Из-за ширмы натужно стучало. Там работал аппарат, собранный из внутренностей старого кондиционера и прозрачных трубок от капельниц. Видимо, самодельный диализ — внутри мутного пластикового бака непрестанно бурлила желтоватая жидкость, насосы прогоняли её через угольные фильтры. Устройство дрожало живым существом, на боку сияли ярким маркером намаленные крупные буквы: «Не выключать! Взрывается». Вся машинерия жила на честном слове и изоленте, но работала с целью отделить подвал от морга.
Агрегат издавал грохот, способный разбудить мёртвого. Компрессор, видимо, выдранный из промышленного холодильника, хрипел, дребезжали инструменты на полках. Трубки дёргало под давлением, влага проступала на стыках под изолентой. Всю конструкцию трясло, как при землетрясении, адская машина подпрыгивала на месте, лязгала и грохотала. Чудовищная пародия на госпитали поверхности с незаметной работой техники. Механизм агонизирующе выл, грубой силой выгрызая у смерти лишнее время.
Посередине отсека поставили два широких стола, грубо сварили между собой толстыми металлическими полотнами. Их покрыли поверх тонкими сменными матрасами из плотного полимера. Над каждым столом висел отдельный направленный прожектор, реликвия шахтных работ, безжалостный к малейшей тени.
Лампы полыхали белыми солнцами. Пациент зажмурился. На миг представилось, как под этим прожектором его разбирают на части. Такой свет нужен для поиска дефекта в рудной породе, а не для разглядывания царапин на коже. Под яркими лучами кожа представала болезненно-жёлтой, а каждая ссадина или шрам выглядели уродливыми кратерами.
В нише находился склад лекарств. Ни одного привычного стеклянного шкафа: сплошные деревянные стеллажи, заполненные внутри пластиковыми контейнерами. Рядом под фитолампами зеленели ящики, набитые отсортированными травами. Крупные надписи — «Полынь», «Арника». Дикое знахарство для обитателя поверхности, привыкшего к синтетическим ампулам.
Виэн недоверчиво покосился на сушеные пучки, и сморщился. Он привык к лекарствам с формулами, ампулам со штрих-кодом и точной дозировкой активного вещества. А здесь предлагали доверить жизнь отвару из листьев. Какой у него химический состав? Сколько в листке действующего вещества, а сколько — токсинов? Дикость, возвращение во времена, когда болезни лечили кореньями, и умирали от простуд и царапин. Сама мысль о лечении подобным гербарием вызывала как минимум недоумение и желание не связываться.
Хозяйка кабинета была под стать своему окружению. Среднего роста, крепко сбитая, в синем рабочем комбинезоне, полевой фельдшер или техник, для починки не только людей, но и механизмов.
Вытерла ладони о штанину комбинезона, оставив на ткани очередное пятно, и протянула для рукопожатия. Ладонь совсем не женская — грубая, широкая, с въевшейся в поры тёмной пылью, не берущейся мылом. Ногти коротко обстрижены, на костяшках — застарелые мозоли и мелкие шрамы от постоянной работы с железом.
— Тут о тебе позаботятся, у Анны золотые руки. На себе проверял, — сообщил Андрей. — Я зайду, когда оправишься. Сообщите мне, Анна.
На секунду замялся, неловко переминаясь с ноги на ногу, намеренно не замечая окровавленных бинтов, сваленных в ведро. Спасти человека, взломав дрон — это пожалуйста, а вот стоять посреди пропахшего гноем лазарета — совсем другое. Здесь он — бесполезный гражданский, спешащий поскорее вернуться к понятным компьютерам.
Дверь за ним хлопнула с излишней торопливостью.
Анна усадила Виэна на один из столов и начала обрабатывать раны пронзительно пряной мазью. Деловито осматривала тело, провела пальцами по рёбрам, где сильно ушибся, сорвавшись с троса. Её внимание привлек неглубокий шрам у самого угла рта.
— Ого… откуда такое? Похоже на укус. Свежий, но уже гноится. Дикий зверь?
— Крыса, — пробормотал пациент, вспоминая страшную сцену с обезумевшим одноглазым, чуть не вырезавшим язык.
Анна хмыкнула и, не предупреждая, плеснула на рану из тёмного флакона. Жидкость зашипела, бурая грязь вспенилась, потекла потоком по коже. Инстинктивно дёрнулся в испуге, но женщина пригвоздила к столу с силой гидравлического пресса.
— Терпи, нежный, — буркнула она, беря инструмент, похожий на скребок для снятия ржавчины. — Крысы зубы не чистят. Заразу надо выскребать до здорового мяса, иначе твоё лицо станет похожим на гнилую тыкву. Бактерии здесь не менее опасны, чем люди. Такие же злые и голодные, как и мы. Твою синтетическую иммунную защиту сожрут быстрее, чем ты успеешь собственный заговор до конца выговорить.
Металл проскрёб кожу с противным хрустом. Вместо острой боли где в затылке отдался тупой, выворачивающий удар. Анна работала работала быстро и настолько без сантиментов, словно зачищала ржавчину на железных деталях. Она действовала очень чётко и точно, но без малейшего сочувствия — обращалась как с манекеном. Даже степлер сработал бы деликатней.
Дверь распахнули, всклоченная голова сунулась внутрь и тут же заныла:
— Ань, там тот старик из 4-го отсека. Вот-вот кранты отдаст. Жар сильный. Дай антибиотик, а?
— Нету лишних, — даже не посмотрела она на просителя. — Дай ему воды.
— Да помрёт же вот-вот! Дай, у нас же есть, с того налёта забрали.
Анна резко развернулась, скальпель в руке блеснул, чуть не располосовав пациенту лицо пополам.
— У меня тринадцать ампул. Тринадцать! На три тысячи народу. Завтра бой. Принесут молодых парней с пробитыми животами. Старик уже пожил, а парни защищают вход.
Повернулась обратно к пациенту, поймала реакцию.
— Не смотри с таким ужасом. Простая арифметика. Если я добра сегодня, завтра некому держать оборону. Гляжу, с небоскрёба нырял? — нажала на ногу, растянутую ешё при падении с тросов. — Сильный ушиб. Но вроде мышцы целы.
Зашипел, когда пальцы жёстко промяли отёк. Окатило горячей болью. В Городе любое болевое ощущение гасили блокаторами ещё до осознания мозгом. Боль — признак некачественного лечения. Анна же работала с телом как с заготовкой, выправляя дефекты грубой силой. И боль от её действий давала Виэну ощущение жизни, напоминала: человек — мясо и кости, а не набор данных. Ощущать своё тело не оболочкой для выполнения рабочих функций, а живым и страдающим организмом было больно.
— Красота! — Анна открыла ссадину на ноге, резко сдёрнула повязку и по колену поползла полоса крови.
Анна плеснула на рану прозрачной жидкостью, полоснувшей по ноге раскалённым прутом. Дёрнулся всем телом, едва не сбив локтем поднос. Раньше никогда не знал ощущений иглы с толстой нитью, протыкающей кожу, и пальцев, стягивающих края раны. Теперь знал. Унизительно, грязно и чересчур реально. Хрустела плоть и напряжённо дышала женщина, ставившая заплатки на прохудившуюся кожу, временами смахивая пот со лба тыльной стороной запястья.
Мышцы на бедре скрутило деревянной судорогой. На кожу плеснули не лекарством, а жидкий азотом, тут же вскипевшим от тепла. Пахнуло чем-то резким, аммиачным, перебивающим вонь гноя. Пациент взвыл. Хотел вдохнуть, но диафрагму заблокировало, рот открывался, как у выброшенной на берег рыбы. Сами собой брызнули слёзы, размывая силуэт Анны. Пронзила животная, грязная боль, от которой нужно скулить и царапать стол ногтями. Тело, отвыкшее от такого варварского обращения, паниковало, выбрасывая в кровь бесполезный адреналин.
— Голодный, небось, — неправильно истолковала реакцию Анна, — на, держи.
В кармане у неё нашёлся соевый батончик.
Вкус опять оказался интенсивным, едва не захлебнулся слюной. Не пресная биомасса, выдаваемая по талонам, сбалансированная и безвкусная, но удар чистого сахара прямо в мозг. Слюна наполнила рот, желудок скрутило спазмом. Опьянение от грубого удовольствия походило на эффект наркотика. Проглотил кусок, практически не жуя. Липкая сладость обволокла горло.
Спазмы, не справляясь с концентрацией жиров и углеводов, сжали желудок, привычный к перевариванию инертной серой слизи. Бросило в пот. Перед лицом поплыли цветные пятна. Ударная доза глюкозы ворвалась в мозг и его заискрило перегруженным процессором. Ярко и насыщенно, почти больно. Вкус сои взрывал рецепторы. Густая слюна затопила рот, затряслись руки, требуя запихнуть в себя остатки вместе с фольгой, чтобы не потерять ни единого грамма. Опьяневший от калорий оператор ощутил себя диким животным.
Скомкал обёртку — шуршащий, цветной пластик, такой не производили уже лет двадцать. Наверняка мародерский трофей из старых, запечатанных складов. Организм отреагировал на забытый вкус паникой: взлетела скорость сердцебиения, кровь прилила к лицу, вызвав жар. Организм переваривал концентрат. Пальцы задрожали. Тело распознало настоящую энергию, и требовало ещё. Напряг пустую руку, борясь с желанием вылизать остатки шоколада с грязных ладоней. Унизительно зависеть от столь малого куска органики.
Спустя минуту пришла тяжесть. Жирный комок свинцом упал на дно желудка. По пищеводу толкнулась кислая отрыжка — печень, никогда не знавшая натурального масла какао, впала в совершенный ступор. Во рту завяз маслянистый налёт, его хотелось соскрести пальцами. От токсичности удовольствия бросило в жар, пот струйкой побежал по спине. Организм привык к переработке рафинированной пасты и к сбалансированному набору микроэлементов, воспринял деликатес биологической атакой. Замутило. Роскошь натурального питания обернулась непосильным испытанием для нутра, выращенного на гидролизате.
Его сразу потянуло в сон.
Женщина увидела клёв носом, и одобрительно замычала.
— Действует. Сила — натуральное лечение. Скоро встанешь на ноги, — пробормотала она, протягивая кружку теплого отвара. — На-ка, запей. Я-то, парень, тоже сверху, но там давно списана в утиль. Попала в G_N, хорошо, успели предупредить и сюда перетащить.
G_N. «Genetic Null». Генетический ноль. Клеймо, поставленное на субъектах с тупиковым геномом. Наверху посчитана ошибкой, браком. Но именно этот брак сейчас спасал ему жизнь, пока правильные граждане наверху отворачивались от его проблем.
— Списана… — эхом повторил пациент.
В голове всплыли образы рабов в туннелях. Вспомнил стёртые, застывшие масками лица, лишённые даже признаков страха от беспросветности. Наверху граждан ограничивали во имя иллюзии порядка и сытости. В Коньково же человека низвели до состояния инструмента для добычи влаги под угрозой голодной смерти. И чтоб было самым жутким, практически на глазах у тех, кто мнил себя настоящей силой.
— По дороге сюда… на плантации в Коньково. Там сотни рабов. Работают на Крыс за воду.
Анна на секунду остановила наматывание бинта, но тут же продолжила работу.
— Знаем.
— Вы знаете? — оператор выпрямился, игнорируя головокружение. — У вас оружие, бойцы, технологии. Почему вы им не поможете? Они же умирают там.
Анна с силой затянула узел повязки.
— Мы не армия спасения. У нас очень ограниченные ресурсы. Каждая вылазка — риск обнаружения всего убежища. Мы не можем привести сюда две сотни людей, нам их даже негде разместить.
Жестокие слова царапнули сильнее недавнего скребка в открытой ране. Надо же было с таким трудом лезть под землю от последствий утилитарной логики, и найти её же в глубине. Наверху оптимизировали расходы, списывали генетический мусор в утиль ради повышения показателей статистики. В Коньково списывали рабов в расход ради эффективности производства. Здесь — ради успеха борьбы. Переменные в уравнении меняются, а формула остаётся прежней: конкретная жизнь стоит много меньше, чем выбранная всеобщей идея. И эффективность сопротивления на этот раз всухую разносила в партии математику выживания. В такой математике сотни рабов Коньково — допустимая погрешность, округлённая до нуля.
— Но там же тоже люди. Такие же, как вы.
— Обсуди с Советом, — оборвала она. — Или с Учителем. А мне не мешай работать. Моя задача — латать тех, кого приносят.
Виэн отпил ещё глоток. Напиток разлил тепло по телу. Чтобы не выключиться окончательно, принялся изучать обстановку.
В соседних боксах, отделенных полупрозрачной матовой перегородкой, лежали два силуэта, подключенные к капельницам. Сквозь мутное стекло выглядели восковыми куклами. Бледная кожа, трубки, датчики. Вгляделся в лица. Резкие скулы, жёсткая стрижка. Знакомые лица — лица охотников. Шок в один миг стёр сонливость. Кай и Ада.
Выдох с резким эканьем застрял в лёгких. Натянул одеяло повыше, стараясь не привлекать внимания. И сейчас, бледные, опутанные трубками, Хищники излучали угрозу. Стекло боксов слишком тонкое, если они встанут, то разорвут всех вокруг. Разум уговаривал не бояться, но инстинкт, выработанный десятилетиями страха перед чёрными шлемами, вопил: беги.
— Эти… они живы? — голос дрогнул, а остатки успокаивающего отвара мигом сгорели внутри.
— Вполне, — ответила Анна, не отрываясь от дел. Голос приобрёл деловитость механика. — Даже на удивление стабильны. Их хорошо потрепали, но эти твари невероятно живучи.
— Зачем они здесь? Для суда?
— Нет, притащили, чтобы экранировать, — Анна жестом приказала замолкнуть и взяла за запястье. — Передатчики. Импланты постоянно стучатся в сеть. Мы экранируем сигнал и искажаем. Наши инженеры хотят использовать канал, запустить через него дезу или вирус.
Оператора ужаснул варварский замысел взлома. Влезть в имплант? Их мозг напрямую связан с боевыми серверами, защищён десятками слоев шифрования и вложенными защитами, сжигающими нейроны при попытке вмешательства.
Он передёрнулся. Использовать живые мозги для прогона терабайт мусорного кода? Раньше считал — на такую жестокость и пренебрежение к человеческой природе способны только наверху.
— Это убьёт их?
— Не знаю. Может быть, не сразу, — равнодушно откликнулась Анна. — Но так пользы от них точно выйдет больше, чем за всю жизнь.
Невольно застыл, изучая экранированные боксы. Рука беспамятного Кая вывернута, пальцы уперты в стекло, разделяющее камеры. С другой стороны к стеклу прижата ладонь Ады. Они тянулись друг к другу сквозь барьеры, через кому и экранирование.
— Такие молодые… — прошептал он.
— А? — не расслышала Анна. — Ты отдохни, парень. Тебя скоро ждут. Поспать попробуй.
Виэн отвернулся. Сон прошёл. Не уходили думы о рабах в Коньково, невыгодных для спасения, и о двух Хищниках, предназначенных в расход ради инфошума. Под кожей пробрало холодом, идущим от каменных стен. У противников и сторонников Системы калькуляторы в головах работают на одинаковых батарейках.
Снова посмотрел на очертания рук за перегородкой. Пальцы за мутными стеклами. На отчаянную попытку прикосновения друг к другу. Зажмурился, но образ не исчез. Две кисти, прижатые к стеклу. Маленький беззвучный бунт. И этот бунт выглядел для него намного более значимым, чем любые лозунги.
Глава 21
Оператор сидел на краю койки, тупо глядел на собственные кулаки. Еда упала в желудок горячим комом, вместо бодрости принесла усиленную сонливость. Тело, получив передышку, отомстило за усталость: ныли выработавшие адреналин мышцы, требовали движения, чтобы разогнать застоявшуюся кислоту. Во рту стоял приторный вкус лекарств, вперемешку с горечью желчи. Чувствовал себя не отдохнувшим, а выпотрошенным, утратившим мышечный каркас.
Комнату выбрали под стать. Натуральный бетонный пенал, забытый строителями в спешке при эвакуации. С низкого потолка свисала паутина проводки, прихваченная изолентой. Штукатурка давно осыпалась, обнажилась ноздреватая серая плоть бетона.
Покрывало на койке выглядело его продолжением. Провёл ладонью, шершавое сукно зацепило огрубевшую кожу царапин, и неприятное ощущение окончательно восстановило его в реальном мире.
Дверной проём заслонила тень.
— Тебе лучше? — с сомнением спросил Андрей, критически оценивая состояние.
— Не совсем, — пробормотал гость, слезая с койки. — Из-за ваших пленников.
В ответ — кивок, но не понимание.
— Да, не добили. Пойдем, нас ждут. По дороге покажу парочку достижений.
Виэн натянул ботинки, избегая лишний раз сгибаться — желудок тут же отозвался глухим протестом. Шнурки пропитались сыростью подземелья и скользили. Проводник терпеливо ждал, прислонившись плечом к дверному косяку. В коридоре дул прохладный ветерок. Сквозняк тянул откуда-то снизу амбре машинного масла и тот особый, ни с чем не сравнимый дух перегретого металла из цехов, работающих на износ. Поёжился, застегивая куртку до самого подбородка. Спуск в чрево огромного организма.
— Я залез в твой архив, — сисадмин устало потер красные глаза. — там терабайты сырых данных. Свалка за полувековой период. Я настроил индексацию, но без знаний структуры данных сопоставление можно вести до бесконечности. Там сотни вложенных директорий с кодовыми именами. Покажи, где именно лежат логи «Глобал-Протокола». Одному мне быстро такой массив данных не прожевать.
На этот раз пошли в другую сторону от медицинского отсека, миновали пост охраны — груду мешков с песком и пулемётное гнездо, чернеющее маслянистым дулом, — вышли к лестничным пролетам. Железные ступени вздрагивали под ногами от работы мощных скрытых механизмов. Рокот, наверху звучавший еле заметным фоном, ощутимой тряской отдавался в подошвах.
Винтовая лестница уходила в темноту, прорезаемую лишь редкими пятнами аварийного освещения. С каждым витком всё сильнее густел воздух. Шахта сочилась влагой, потеки рисовали причудливые контуры. Липкие от конденсата перила цепляли руки. Они спускались на другой климатический уровень.
Внизу всё устроили куда основательнее. Коридор выложили подогнанными каменными блоками, потолок укрепили толстыми прочными балками. Под балками тянулись пучки разномастных кабелей и ржавые короба вентиляции, гудевшие непрерывно и давяще. Свет давали не лампы, а наспех прикрученные диодные ленты, вырванные из приборов наверху. Их мертвенно-белое, резкое мерцание выхватывало фигуры в длинной светящейся норе коридора.
Спустились ещё на один пролёт. Без необходимости, просто чтобы посмотреть на склад и пройти без помех. Складское помещение протянули подо всем проходным коридором, освещено настенными лентами светодиодных фонарей. Здесь был склад всего, что не успели или не смогли немедленно применить к делу. И этого тоже было порядочно.
Под ногами хлюпала грязная жижа, её не успевали или не считали нужным убирать. Тянулись бесконечные ряды стеллажей, сваренных из арматуры, забитые ящиками, узлами неизвестных агрегатов и бесформенным ломом. Будто внутренности гигантского часового механизма, разобранного для починки. Встреченные не обращали на них внимания. Бледные от недостатка ультрафиолета лица испачканы сажей и смазкой. Перемещались с энергичной точностью муравьев, понимающих под остановкой смерть колонии. Здесь уже не слышалось праздных разговоров, одни короткие команды да лязганье инструментов.
Людей было гораздо больше, чем сверху. Все боковые ниши заняты под рабочие пространства. Пожилая женщина распускала на нитки старые синтетические тросы, сматывая в клубки. Двое парней, сидя на корточках, счищали окись с горы позеленевших микросхем. Их пальцы, почерневшие и изъеденные химикатами, двигались со скоростью заведённых механизмов. Счищали защитный лак скальпелями, выковыривали ценные контакты из мёртвого электронного лома. В пластиковом тазу плескалась мутная бурая жижа — кустарный раствор для травления плат. От таза вверх поднимался пар, разъедающий слизистую даже на расстоянии трёх метров. Едко пахло растворителем. Нет вытяжек и респираторов. Тряпки, намотанные на лица. Несколько человек выпаивали компоненты, и разносил окрест едкий дым канифоли.
Из прохода зазвучал скрежет металла и громкие выкрики. Проводник потянул Виэна за собой, приглашая осмотреть зал. В нос ударил концентрированный дух мужской раздевалки. Воздух горячий и влажный. Тропики, созданные разгорячёнными телами. Полы застелили всем, что попалось под руку — от гимнастических ковриков до кусков поролона, выдранных из старых диванов. Стыки между ними проклеили скотчем, местами отходившим и обнажающим каменный пол. Под тусклыми лампами тренировались группы в самодельной экипировке. В качестве тренировочного оружия бойцы работали с обрезками арматуры, обмотанными тряпками. Резкие, полные сосредоточения движения. Звуки ударов не глохли, а отражались от низкого потолка. Зал напоминал мясорубку, работающую на холостом ходу.
— В сочленение бей! — хрипел инструктор, брызжа слюной. — У Хищника броня три сантиметра, ты ему грудь не пробьешь! Бей в колено! Ломай гидравлику!
Глухие удары металла о мешки с песком звучали рвано и тяжело. Тренирующиеся выдыхали с хрипом, наносили каждый удар как последний.
— Бойцы тренируются против машин, — пояснил Андрей. — На открытом пространстве шансов нет, но в туннелях узко, ближний бой гораздо эффективнее. Если первым выстрелом не снесут.
Щуплый парень отрабатывал уход перекатом с последующим ударом заточкой снизу вверх. Ассистировал грузный мужчина с протезом вместо левой голени. Металл протеза стучал о пол. Бойцы не щадили друг друга. Парень пропустил удар прикладом макета винтовки в ребра и согнулся, харкая слюной, но инструктор не повернул головы на стоны. Здесь жалость была слабостью, убивающей всю группу. Если не можешь терпеть боль от удара палкой сейчас, станешь трупом в первые три секунды реального боя. Дрессировка смертников.
Бойцов экипировали защитой, собранной по принципу «с миру по нитке». Жилеты, нарезанные из автомобильных покрышек и транспортерных лент, щитки на локтях из расплющенных канистр, шлемы с грубо приваренными решётками. Уродливо, кустарно, с эстетикой свалки, но могло спасти от скользящего удара или осколка. Многие хромали или носили потемневшие от грязи эластичные бинты — травмы явно не лечили неделями.
Один из бойцов снял шлем. Лицо — сплошной синяк. Левая половина лица заплыла полностью, на скуле красовалась свежая ссадина, сочащаяся сукровицей. Жадно пил воду из помятой фляги, вода текла по подбородку, смешиваясь с грязью на шее. Взгляд расфокусирован — находился где-то далеко, за пределами действительности. На выраженное внимание не отреагировал ни интересом, ни враждебностью. Воспринял очередным объектом интерьера. Вытер рот тыльной стороной ладони, снова натянул шлем и с глухим рыком вернулся к мешку с песком.
Подошли к узкому техническому лазу. Уже без лестниц с перилами — только скобы, вбитые прямо в ствол вертикальной шахты. Из глубины тянуло могильным холодом. Андрей полез первым, его ботинки гулко стучали по металлу. Виэн последовал за ним, стараясь не замечать бездонную чернильную глубину. Скобы скользили и холодили руки. Спуск занял две минуты, но мышцы успели заныть от напряжения. Когда ноги коснулись пола, от перепада давления заложило уши. Они попали в коридор, старше и монументальнее верхних уровней — обработка более грубая, а своды поднимались гораздо выше. Старинные катакомбы.
— Мы обычно пользуемся другим спуском, — пояснил спутник. — Но я решил тебе показать этот.
Прошли туннелем, свернули в боковой штрек. Громыхание цехов сменилось многоголосым гомоном. Открылся большой, хорошо освещенный зал, отгороженный от основного прохода полупрозрачной перегородкой.
Перегородка из толстого, мутного стекла, покрытого сетью мелких царапин. Свет внутри желтоватый, болезненный. Полная звукоизоляция: губы за стеклом беззвучно шевелились. Эффект немого кино или наблюдения за подопытными в лаборатории. Рядом с входом висел огнетушитель, покрытый таким слоем пыли, что походил на камень, и график дежурств, написанный на куске картона от упаковки сухпайков. Имена написаны разным почерком — детским, кривым, и уверенным, взрослым. Многие имена вычеркнуты жирным маркером. Навсегда.
— Школа, — пояснил спутник.
Класс разместили в бывшей вентиляционной камере. Парты сколочены из ящиков из-под оборудования. По центру углём нарисована схема — не алфавит, а устройство фильтрации воды. Дети сидели слишком тихо для своего возраста. Ни смешка, ни попытки отвлечься. Игры тоже не подходящие: двое мальчишек в центре комнаты на полу на скорость разбирали и собирали технический узел, щелкая деталями с ловкостью фокусников. Лица старчески серьезны. На партах перед остальными детьми тоже лежали не тетради, а разобранные части раций, пучки проводов и отвертки. Девочка лет семи с тонкими косичками сосредоточенно наматывала медную проволоку на ферритовое кольцо, высунув кончик языка от усердия. Маленькие пальцы все в ожогах и порезах, замотанные пластырем.
В углу стояло единственное наглядное пособие в классе — макет взрослого человека в натуральную величину, явно не раз использованный в качестве мишени — в дырах просвечивала проволока, торчали куски папье-маше. На нем разноцветными мелками отметили уязвимые точки: артерии, суставы, сплетения вен. Детей здесь не учили литературе или истории. Их учили паять и стрелять. А книги давно пустили на растопку.
Преподаватель тоже не походил на доброго дедушку. Одна рука скукожена давней травмой, а голос скрипел несмазанными петлями. Диктовал без выражения:
— Красный индикатор на сканере «Ищейки» — зона поражения пятнадцать метров. Зелёный — тридцать. Если мигает жёлтый — ложитесь и не дышите, работает тепловизор.
Дети слушали инструктаж, как бывалые солдаты — сосредоточенно и не делая пометок.
— Нечего шокироваться, — буркнул провожатый, перехватив реакцию оператора. — Они не питают иллюзий. Наверху из них тут же нарубят фарш. Так хотя бы доживут до половой зрелости, умея читать. И то не факт. Они не заменяют детство, а получают отсрочку. Крохотный шанс успеть стать полезными.
Коридор закончился тупиком, перекрытым огромными воротами. Два метра стали, массивные петли, покрытые слоем консервационной смазки, и отполированный до блеска штурвал запорного механизма. На двери ни электроники, ни сканеров. Рядом с дверью, в нише, сидел часовой в полном боевом облачении, на коленях лежал дробовик, ствол напоминал небольшую пушку. Даже не шевельнулся при их приближении, лишь подверг профессиональному осмотру мясника.
Такие двери не ведут в обычные помещения. Скорее, в огромные коридоры.
— А вот, — проводник сделал широкий приглашающий жест, — вход в ту самую прихожую.
Оператор остановился.
— Андрей!
Тот покосился через плечо. Виэн гнал паранойю прочь, но теперь мысль вспыхнула с новой силой.
— Я не уверен. Я не шпион, но я мог выдать тебя. Твой телефон. Я активировал его для посылки тебе сообщения. Я не успел найти другого способа.
Он судорожно сглотнул. Страх пополз по позвоночнику. Представил себе радиоволны, проходящие сквозь метры земли, достигающие спутников или дронов-ретрансляторов. Яркие точки на мониторе Хищников, мишени в центре зеленой сетки координат. Под удар попадут не только измотанные бойцы, но и весь этот хрупкий подземный мирок. В горле пересохло, ладони вспотели. Ждал удара или окрика, но спутник не шевелился.
— Твой телефон, — повторил он. — Тебя могут отследить. Нас. Найти это место.
Проводник хмыкнул, но без прежнего пренебрежения. Оценил профессиональную тревогу.
— Спокойствие, только спокойствие, — хладнокровно ответил он. — Телефон работает модемом, тупая железка для передачи сигнала. Моя Kali Linux запущена в песочнице, в изолированном контейнере оперативной памяти. Сообщение ушло, контейнер самоликвидирован. Ни логов, ни кэша, ни следов на диске.
— А сигнал? — не унимался оператор. — Точку выхода — её же засекли. Я поставил маяк для обмена координатами. Чтобы обменялись устройства при следующем рукопожатии. Его засекли.
— Фантом засекли. Я использовал спуфинг MAC-адреса с динамической сменой частот.
Смысл ускользал от визитёра и непонимание отразилось у него на лице.
— То сообщение… — терпеливо продолжил объяснение Андрей. — Пакет данных прыгал по старым ретрансляторам мячиком для пинг-понга. Для сканеров сигнал появляется одновременно из Тушино, с орбиты и из старой Голландии. Триангуляция будет сводить данные воедино до второго пришествия.
Опасения всё же не пропали полностью. Любой несанкционированный сигнал — угроза, и хитрости могли лишь задержать, но не остановить Систему надолго. Тем не менее, спутник выглядел уверенным в их безопасности.
— Ну, хорошо. Надеюсь, твоя изобретательность не подведет.
Из кармана возник массивный ключ на цепочке. Проводник вставил в замочную скважину рядом со штурвалом и с усилием повернул. Кликнуло внутри двери, с грохотом перекатились огромные валуны грузов. Налёг на штурвал, вены на шее вздулись от напряжения. Механизм неохотно исполнил приказ, со скрипом, отдающимся в перепонках. Дверь приоткрылась, выпустив облако спёртого воздуха. За дверью открылась не темнота, а абсолютная чернота. Кожа на руках покрылась мурашками, волоски вздыбились. За порогом заканчивалась известная реальность и начиналось то, чему нет названия на прошлых картах.
Прошли через тёмную пустоту, закончившейся площадкой. Тяжело раскатились армированные двери.
— Готов зайти в гости к дракону?
Вошли в лифт.
Кабину грубо обшили железными листами. Решетчатый настил, снизу пробивался тусклый синий свет из шахты. Вместо кнопок этажей — единственный рычаг. Сдвинулся с натугой, скрипнув отсутствием смазки, и пол ушёл из-под ног. Желудок подпрыгнул к горлу. Спуск был не плавным: кабина дёргалась, тросы скрипели, снаружи по обшивке стучало. За толстым, армированным стеклом проплывали слои породы — сначала бетон, потом бурая глина. Давление повышалось, в ушах стоял тонкий писк.
Кабина скользила внутри колоссальной шахты, выполненной из многослойного упрочненного полимерного стекла. Прозрачная артерия, прорезающая толщу затопленных нижних горизонтов. Виэн завороженно смотрел — за бортом в синеватой мгле проплывали искорёженные металлоконструкции, зажатые в водяных тисках. Лифт двигался в герметичном вакуумном стакане, мощные ребра жёсткости, опоясывающие прозрачную трубу каждые пять метров, говорили о чудовищном давлении снаружи, десятки атмосфер, готовые раздавить каждого, кто рискнет покинуть хрупкий коридор.
Лифт уходил в глубину толщи грунтовых вод, создавал эффект подводного путешествия.
— Понимаешь, почему глубинный зал? — проговорил приглушённый голос. — Он действительно очень глубоко, самые мощные сканеры не достанут.
Лифт остановился с рывком, двери распахнулись, открывая перед ними ещё более просторный, величественный зал, залитый мягким светом.
Впереди шевельнулась фигура. Учитель ждал их.
Глава 22
В глубинных залах не пахло зеленью верхних уровней. Сердце убежища гудело энергией. Пахло грозой и жжёным металлом, мощный рокот механизмов сотрясал землю. Повсюду кипела работа. Огромные буровые установки, звеня цепями, прогрызали новые штольни. Равномерно били молоты по металлу, высекая фонтаны искр. Десятки человек в пыльных робах перемещали массивные тележки с породой.
— Глубинные туннели, — голос прерывался, говорить приходилось на ходу, — не просто часть убежища. Скорее наоборот, убежище выросло из них. На самом деле тут живёт старая, забытая история. Часть секретного метро под Москвой, построенного ещё в 40х годах XX века. Мы в «Объекте-0». Бывший ФРЦОД, федеральный резервный центр обработки данных. Почему именно в этом месте — не спрашивай. В описании написано про уникальность геопозиции, какая-то кварцевая линза внизу, поддерживающая проект Савельева, но мы не разобрались, о чём это. Кроме того, спроектирован автономным бункером на случай тотальной войны. Вокруг законсервированное оборудование правительственной связи. Обновляли вплоть до конца прошлого века, мой отец — один из штатных инженеров этих узлов. Когда наверху пошло настоящее безумие, он и ещё сотня таких же энтузиастов перетащили семьи под землю, перевели системы в автономный режим и построили агрокомплексы. Мы не создавали лаборатории — унаследовали и поддерживаем.
— Безумие наверху — Глобал протокол? — уточнил Виэн. — Про какое время вы говорите?
— Великое очищение. 14 февраля 2089 года. Глобал-Протокол к тому моменту уже давно был полностью распространён и зафиксирован на всех станциях. А вот после великого очищения сюда ушли все те, кто не принял цифровые ошейники. Инженеры, ученые и связисты, бригады путейцев и техников, знающих каждый нелегальный шлюз и каждый кабельный коллектор, не указанные в официальных планах. Убежище росло из старых узлов ГО в автономную среду, пока наверху окончательно не забыли о существовании нижних уровней, ставших для Города легендой. Мы лишь расширили, используя старые технологии и прогрызая новые штольни глубоко под грунтовыми водами. Мы не изолированы полностью: подполье наверху регулярно пополняет наши ряды беглецами, приносящими свежие коды и запчасти. Мы — системная опухоль и город предпочитает нас не замечать.
За разговором прошли коридор, очередной шлюз, и зашагали по помосту над огромными производственными помещениями. Внизу стоял гвалт работающей техники.
— Вот наши цеха, — голос Учителя обладал удивительной особенностью — легко проходил сквозь самый сильный грохот. — Мы добываем ресурсы. Строим. Ремонтируем. Технологии примитивны, но упорства и людских ресурсов хватает, — выразительно перевёл взгляд вниз, где звучали глухие удары кувалд. — Мы хотим быть готовы ко всему.
Андрей притормозил у разобранной панели управления буровой установкой.
— 2072 год, — потрогал пальцем микросхемы. — Почему вы используете чипы сорокалетней давности?
— Мы — потомки тех, кто не вышел на поверхность. Это позволило избежать последствий, но лишило обновлений, — он обвёл рукой пространство. — Мы заперли двери изнутри, когда наверху начали вводить Глобал-Протокол.
Мотнул подбородком на гудящий станок в углу.
— Мы не изобретаем ничего нового. Технологическая стагнация — минимально допустимая цена скрытности. Все доступные нам устройства — реплики прошлых разработок. Мы штампуем на 3D-принтерах старые запчасти по сохранившимся в памяти чертежам, но самих исходных схем, логики работы, у нас нет. Мы — ремонтники в музее, а музей не может быть живым городом. Мы копируем формы, давно утратив содержание.
Прошли через цех и вошли в длинную комнату, заставленную стеллажами с бумагами.
— А тут — остатки архивов ИКИ — Института космических исследований. Настоящая бумага, не стертая магнитными бурями. Там много бесполезного хлама: спецификации спутников, сгоревших в атмосфере полвека назад, и чертежи давно не производимых разъемов. Но среди информационного мусора есть и полезная информация. Например, законы физики, вытравленные из памяти нынешних граждан для замены на упрощенные скрипты. К сожалению, по более современной технике сведений практически нет.
— Но у Хищников наверху тоже старая архитектура. Кремний. Не бионика, нет квантовой оптики.
— Прогресс не остановился, его запретили. Решили, новые технологии — зло, и наложили вето на сложность. Технологии не развивают, лишь латают дыры. Тебе показалось, наверху всё иначе? — на устах скользнула горькая усмешка. — Золотые башни слепят глаза полировкой. На самом деле мир умер в день запуска Очищения. Стагнация — наш общий диагноз уже больше тридцати лет. И наверху, и здесь мы штампуем старое железо на 3D-принтерах, боясь изменить хоть строчку. Исходные схемы утрачены, копии создают до тех пор, пока ошибки в коде не станут критическими. Мир давно зациклился в роли механизма, штампующего собственные копии. Никто больше не пишет новые программы, все поддерживают тлен в надежде на успешную отработку ещё одного цикла. Архитектура верхних процессоров — всё те же кристаллы столетней давности, доведённые до абсолюта, но не изменённые в качестве ни на йоту. Доктрина Абсолютной Прозрачности гласит: «Сложность есть хаос». Любое самообучение или новые принципы вычислений, даже просто нелинейная логика признаются ересью. Чтобы не потерять контроль, правительство запретило инновации.
Он провёл пальцем по схеме на стене.
— Никто не строит новое — все бесконечно тиражируют старое. Заводы на поверхности — гигантские автоматизированные 3D-принтеры, и клепают они всё те же утверждённые модели десятилетиями. Человечество попало в петлю: мы не можем создать ничего умнее Ядра, ибо оно считает системной ошибкой любой интеллект выше собственного уровня, а он не так-то и высок. Весь прогресс заменен оптимизацией. Мы утратили принципы ковки железа, зато очень ловко умеем вылизывать собственные цепи.
Им пришлось прерваться, потому что они дошли до зала конференций.
За массивным столом уже собралась группа. На голографической карте туннелей мигали тактические отметки. Лина заканчивала инструктаж.
— Хищники всегда бьют по кратчайшему пути. Предсказуемы. Основной отряд мы разместим не у главного входа, а в обходном техническом коридоре. Мы дадим им зайти, а потом ударим в тыл. Потери будут меньше, а эффект — максимальным.
Молодой боец недоверчиво хмыкнул:
— А вдруг им такой план не понравится и они по-другому решат пойти?
Подземная фурия резко развернулась к нему.
— Я провела в туннелях больше дней, чем ты на свете, парень. Я знаю каждый шаг и каждую привычку этих тварей. Они пойдут именно так.
Боец потупился. Учитель наблюдал за сценой, и одобрительно хмыкнул.
— Думаю, план отличный. Спасибо. Но сегодня мы собрали команду не для обсуждения тактики. Андрей, — ладонь звучным шлепком опустилась на стол, — ты говорил про своё важное открытие, способное полностью изменить расстановку сил.
Тот извлёк листок бумаги с обрывком кода. Выложил на стол.
— Вот, — отчеркнул ногтем символы: «214-зет-зет-плюс-Ар1».
Листок пошёл по рукам.
— Ну да, один из кодов, который мы используем паролем. Ты называл для прохода. Архивариус необычно легко его выдал, но тут нет большого открытия. Переходи к главному! Ты обещал объяснить, зачем мы рисковали, спасая твоего оператора. Называл уникальным ключом. Объясняй! Да, ты восстановил связь на Полянке и научил нас многим новым командам, мы поверили в твою исключительность, но, — тут он приблизился и взглянул в упор, — Борисыч потерял четверых, прикрывая ваш отход, и Совет требует крови. Никакие супернавыки не спасут вас от утилизаторов, если твой гость не окажется тем самым золотым дампом, переворачивающим доску. Я лично вышвырну вас обоих за гермозатвор.
В голосе зазвучал металл. Угроза стала смертельной и физически ощущимой.
— Я соврал, — хладнокровно сообщил сисадмин. — Хотел вернуть долг благодарности. Он помог мне, я помог ему. Когда пришло от него сообщение, нужно было среагировать моментально. Времени придумывать тонкости не было, я и выпалил первое пришедшее в голову.
Хозяин подземелья побагровел, но наглец продолжил, игнорируя его гнев:
— И всё-таки я прав. Сам — не ключ, но его аномалия — вполне. Виэн, можешь открыть логи твоего профиля? Те записи, где считывается твой РБЛ.
Оператор приблизился к одному из терминалов. На голографический стол вывалился массив данных — запутанный, полный мусора.
— Вот. С ручного носителя — всё сохранённое.
На экране замелькали строки кода. Андрей тут же зарылся в них взглядом. Несколько напряжённых минут молчания, затем он поднял голову, и на лице его проявился триумф.
— Ну конечно… — воскликнул он. — Вот и ключ. Открой сырые данные. Сейчас мы покажем вам саму структуру ошибки. Где лог твоих базовых запросов?
Виэн прокликал структуру папок, доискиваясь до запрошенного файла.
— Пока мой новый друг ищет данные, — Андрей положил Виэну руку за плечо, — я объясню ему то, что вы уже знаете. Вам уже объяснял. Я хорошо знаю работу систем до Очищения, ведь я их строил сам. Для начала поверь — я не местный, я попал сюда из 2016 года.
Виэн кивнул, уже давно это сообразил.
— Я не жил под тотальным контролем. Не встречал дронов-убийц, лифтов, ныряющих на три сотни метров, многоуровневых небоскрёбов и голограммного телевидения. Но творимое наверху мне хорошо знакомо. И мой мир рождал коррумпированных чиновников, готовых убить человека ради шашней с его женой. И слепых корпоративных шестёрок, предпочитающих быть ничего не понимающими винтиками, и алчных предателей, готовых продать всех друзей за очки рейтинга, тогда представленный деньгами.
Учитель нетерпеливо шевельнулся, но сидящие за столом продолжали с интересом слушать.
— Может, я из другого времени, но всё равно ясно вижу — продажные мерзавцы и бездушные манипуляторы никуда не делись. И по-прежнему сидят наверху пирамиды, управляя жизнью масс по собственной прихоти.
— И? — не вытерпела первой Лина. — Нас-то они не могут найти. В подземке живут десятилетиями. И Крысы, и коммуны.
Сисадмин скосил глаза на Виэна.
— Сколько народу живет наверху? Застройка плотная, но реальные размеры города известны?
— По последней переписи — около двенадцати миллионов в центральном секторе, — ответил тот. — Со всеми округами — миллионов двадцать пять, может быть, тридцать.
— А здесь? Во всем подполье?
— Около двух с половиной тысяч вместе с детьми и стариками, — ответили из-за стола.
— А всех остальных, включая Крыс и прочих?
— Наверное, ещё тысячи четыре, может, поменьше.
Андрей прикинул в уме и усмехнулся.
— Вот и ответ. Вы составляете меньше двух сотых процента от популяции. Система контролирует поверхность: заводы, жилые ульи, транспорт. На старые сервера и без вас приходится колоссальная нагрузка. А заброшенное метро — сложная, нерегулируемая среда. Для процесса оптимизации вы не важнее статистической погрешности. Тратить гигаватты энергии и посылать элитные отряды для вычистки плесени в подвале, не влияющей на эффективность города? Экономически нецелесообразно. Вас игнорируют, пока вы им не мешаете.
Над столом понеслось гудение — слова вызвали сильное сомнение. Спикер поднял руку, призывая ко вниманию.
— Мне помог понять ситуацию случай. Вот бумажка, точнее, её сочетание с рейтингом. Догадка Архивариуса была верной, но нехватка знаний не дала ему связать все факты воедино. А я — сисадмин, я каждый день смотрю на такие штуки. Конечно, рейтинг ставит всё окончательно по местам.
Замельтешил ладонью над столом. Зазвучали смешки, тут же осёкшиеся под строгим взглядом. Учитель сам сделал правильное движение и над столом возникла мерцающая проекция Города. Не схемы, а живого, сложного организма, перехваченного линиями связей.
— Спасибо, — сисадмин придвинул к себе планшет для вывода проекции. — Смотрите: вот ваш мир. Весь пронизан РБЛ — определяет само существование.
Город на голограмме ожил, наполнившись движущимися точками разных цветов. В нижнем уровне города в основном серые и красные точки, изредка синие. В средних уровнях преобладал синий цвет с редкими вкраплениями золотистого. Верхний уровень полнился чёрным цветом.
— Красные — деклассированные, расходный материал. Те, у кого рейтинг ниже 1000. Деклассанты. Лишенцы. Отданные на милость судьбы. Это и вы, и Крысы, живущие на инстинктах. И книжники, потратившие накопленный за всю жизнь рейтинг на иностранные языки.
Серые — от тысячи до трех — массы. Их и в моё время так называли. Серые массы. Основное население города. Основной адресат и потребитель. Апатия. Полное подчинение. Жизнь регулируется до мельчайших деталей. Эмоций, отклонения — всё запрещено.
Синие — от трех до пяти тысяч — Исполнители. Среди них встречаются и хищники, и операторы, и интеллектуалы, да кто угодно. Выполняют грязную работу. Охотятся. Управляют низшими слоями. Живут в упорядоченном мире, но порядок построен на подавлении.
А вот золотые, таких много меньше — те, у кого выше пяти, но меньше семи тысяч. Начальство, чиновники, управленцы, хранители одобренных знаний. Книжники до потери рейтинга. Жизнь относительно комфортна, но всё равно скованная ограничениями. Пресловутые разрешённые знания — и то очередная цепь.
И последние, чёрные — Элита. Рейтинг выше семи тысяч. Роскошь. Власть. Одобряемые эмоции. Получают привилегии, личную выгоду, слепо следуя правилам, и управляют в своих интересах. Вроде бы истинные хозяева вашего мира.
Виэн изучил собравшихся, на миг зафиксировал взгляд на каждом. Они слушали не из почтения, а из жажды. В голосе пришельца из прошлого звучала логика разума, не скованного страхом перед падением РБЛ. Готовность препарировать Систему как старый механизм, лишить её божественного статуса. Дать подробный чертёж уязвимости, в которую можно вогнать железный лом.
— Ничего не упустил? — спросил он, усмехнувшись.
— Упустил! Первичный РБЛ присваивается при рождении на основе примитивного биометрического сканирования для потенциала к лояльности. По сути, произвольно! Профанация в чистом виде!
Сисадмин погрузился в размышления. Логично, все кусочки пазла вставали на свои места. Не контроль. Тщательно разработанная ложь, которая призвана поддерживать власть тех, кто наверху. Не ИИ, а банальная бюрократическая машина, чтобы скрыть человеческий порок стремления к власти. Охватило жгучее желание сломать эту дряблую, но всесильную иллюзию. Теперь на голографической проекции горит не схема, а поле битвы.
— Ну и в чём же твое открытие? — спросил Учитель, снова беря в руки листок. — О строении нашего мира мы хорошо осведомлены.
Вместо ответа тот лёгкими движениями вытащил по одной точке разного цвета в пространство перед собой, расположив их в ряд, открыл для каждой таблицу свойств и выделил в каждой таблице поле с названием: Control_code_definition.
— Ничего не напоминает? — поинтересовался почти ласково.
Виэн сообразил первым.
— Они все похожи по формату на код на бумажке. Только с другими символами и разделенные по парам.
— На половину кода, — въедливо поправил Андрей. — Вторая половина — двадцатизначное число, которое я нашёл на стеллаже Архивариуса. Полное число рейтинга. И когда я сопоставил это число с не падающим рейтингом, открылось слабое место. Причём такое, что весь ваш хвалёный рейтинг можно разрушить через него до основания.
Снова повернулся к голографической проекции, где горел отрывок из лога.
— Смотрите внимательно. Показывает «3141». Но показывает неправду. Вернее, результат ошибки. На самом деле обрабатывается вот это.
Одна строка лога увеличилась, следуя движению пальцев. Рядом с идентификатором в поле RBL_raw_value горела последовательность: 3141.59265358979323846…. А сразу за ней -сообщение: ERROR: BUFFER OVERFLOW. CANNOT ASSIGN TO FIXED INT. IGNORING VALUE.
Проследил за реакцией на ошеломленных лицах собравшихся.
— Это число известно со времён древнего Вавилона, а последние пять веков даже имеет имя. Это — число Пи. Иррациональная дробь. Именно оно застревает в поле данных. База, при всем масштабе, — простая и довольно тупая технология. Поле рейтинга — Integer. Целое число. На него выделяется ограниченный объём памяти с жёсткой структурой данных. А значение для присвоения — Float с мантиссой.
Развернул схему ошибки на весь экран.
— Когда происходит обращение к профилю, происходит конфликт типов данных. Обработчик загоняет бесконечную дробь в целочисленную ячейку. Вызывает критическое исключение: либо несовпадение типов, либо переполнение буфера. Программа натыкается на него и ловит переполнение.
— Выглядит обычной ошибкой. Почему не исправят? — Учитель не верил до конца, но заинтересовался курьёзом.
— А ошибка нигде и не всплывает. В типовой ситуации должен бы произойти крах, синий экран. Но архитекторы оставили костыль — обработчик ошибок. Инструкцию: пропускать операцию в случае критической ошибки чтения данных. Для сохранения текущего статуса. Кодеры-ленивцы часто так фиксят баги. Объявляют число »NaN«, Not a Number. А в ядре прописано: если значение рейтинга вызывает ошибку вычисления, игнорировать пакет, во избежание падения.
Андрей усмехнулся и швырнул планшет на центр стола. Проекция города вздрогнула.
— Число не игнорируется специально. Обработка каждый раз пропускает код во избежание собственного обрушения. Для неё эта запись — битый сектор, прочесть нельзя, но и удалить — тоже. И я понимаю способ возникновения этого битого сектора. Фокус вот в чём. В поле рейтинга записано не статичное число, а ссылка на функцию, — тыкнул пальцем в строку кода на экран. — Рекурсивный вызов вычисления Пи. Когда этот статус считывается, то процесс падает в цикл вычислений. Не может завершить операцию и, во избежание завешивания всей системы, пропускает поток данных как невалидный. Если говорить профессионально, — на экран вывелась схема стека памяти, — при обращении к данному ID происходит разыменование битого указателя. Запрос ожидает целое число, а получает адрес в памяти, где запущен поток (thread), вычисляющий константу. Процессор ждёт завершения операции, ожидая получить результат, но хвост числа Пи бесконечен. Возникает критическое переполнение буфера. В нормальном коде всё бы просто рухнуло, но ваш Глобал-Протокол — многоэтажная конструкция из костылей, натуральная пирамида. И один из костылей нижнего уровня — директива, указывающая — при ошибке чтения типа данных вернуть null и перейти к следующей задаче. Для базы человек с ошибкой — не объект для обработки исключения, а аппаратный шум, который велено не замечать во избежание обрушения.
Продолжить он не успел, воздух разрезало завывание сирены, свет померк, а из динамиков донеслось самое неприятное изо всех возможных сообщений.
Глава 23
— Периметр прорван! Периметр прорван! Займите места в глубинном убежище! — монотонно завывал автоматический голос.
— Срочно в командный зал! — хрипнул голос в скрипящем динамике.
Они прошли небольшим коридором и вышли в зал с огромными голографическими панелями. В зал всё время входили новые люди. Учитель занял удобное место у крупной панели и жестом подозвал к себе остальных.
На панели показывался внешний коридор эвакуации. По нему нескончаемым потоком шла толпа, и Виэн, впервые осознав количество народу в убежище, похолодел от страха.
— Всё-таки вычислили твой телефон! — пролепетал он. -Из-за моего сообщения.
Сисадмин помотал головой, не отрываясь от другого голографического экрана, демонстрирующего дверь верхнего убежища. Пока защитники сдерживали периметр, но дым от выстрелов уже заволакивал изображение.
— Невозможно! — буркнул он. — Десятком хостов маршрутизируется и там биты фреймов специально напутаны в передаче. Я сам могу только с одного компа открыть.
— Уверен? — с сомнением в голосе произнёс Учитель. Подтащил к себе поближе панель управления монитором. — Давайте посмотрим на атаку, раз прорыва периметра боятся. Все Крысы туннелей не смогут его прорвать.
Повинуясь команде, изображение переключилось на крохотный дрон с камерой. Тот снялся с насеста, пролетел узким проходом. Выбрался в туннель.
У баррикады, недавно пройденной Андреем и Линой, шла жестокая схватка.
В тусклом свете аварийных ламп развернулась отчаянная битва. Защитники вжались в щиты, поливая туннель огнем из винтовок. Мелькали лица, искажённые в крике.
Ослепляли дульные вспышки, рисовали в темноте призрачные салюты. Осечки затворов, перезарядка, и снова огненный ливень, сотрясающий всё подземелье. Бойцы отчаянно бились, сотнями опустошали обоймы в попытке остановить жестокий натиск. Яростный огонь с обоих сторон нёс клубы из свинца и энергии. Кипел раскалённый воздух. Непрерывный огонь винтовок слился в единый рёв, от которого трескались камни. Эхо множило оглушительную какофонию из канонады.
Очереди свистели по туннелю, ударялись о цели, выбивая снопы искр. В ответ звучали глухие удары, массивный снаряд врубился в баррикаду, зашипели выстрелы, прожигая металл щитов. Двое срывали с пояса гранаты и метали в дальний коридор. Вспышки взрывов мелькали каждые полсекунды в новом месте. Защитники кричали, голоса тонули в грохоте, но продолжали палить в неясные силуэты, мелькающие в клубах дыма и вспышках огня.
Бой на мгновенье стих. Трое защитников подкатили платформу с закреплённой на ней массивной турелью. Развернули. Бросились наземь, ища укрытие. С оглушительным рёвом турель выплюнула сгусток плазмы. Мощный удар сотряс туннель, и все вокруг заволокло едким, густым дымом. Камера дрона, потеряв фокус, рисовала белые помехи.
В дыму промелькнули фигуры, так быстро, что походили на обман зрения.
Фигуры в тёмных комбинезонах и красными огнями красными огнями на шлемах двигались с невозможной скоростью и точностью. Хищники не тратили энергию понапрасну: каждое движение было выверено и отточенно, каждый маневр — согласован и отрепетирован. Первый увернулся от очереди, и ответным выстрелом с руки деактивировал оружие и отбросил плечом. Ещё один, проскользнув мимо линии огня, открыл огонь по баррикаде, разбрасывая обломки и пыль. Повстанцы сражались отчаянно, сопротивляясь натиску, но их оружие оказывалось бессильно против брони и эффективности атак профессиональных военных.
Баррикада рушилась от напора. Один, легко перепрыгнув нагромождение обломков, прорвался в тыл, и за считанные секунды вывел из строя троих, прежде чем те успели среагировать. Сенсор заполыхал в толпе, мелькая красной искрой в разных углах. Защитники падали безвольными куклами, крики боли смешивались с хрипами и глухими ударами. Вспышки выстрелов озаряли туннель, земля тряслась от грохота взрывов. Защитники бились насмерть, только сил всё равно оказывалось слишком мало.
Один из защитников, с поседевшими висками, прикрывая отход товарищей, выпустил очередь, но ответный выстрел достал в грудь. Мужчина покачнулся и упал, выпустив оружие.
Молодая женщина ударила по шлему прикладом автомата. От удара сенсор моргнул, но Хищник даже не замедлил хода и нанёс ответный удар, отбросивший женщину тряпичной куклой. Та пролетела несколько метров и рухнула на груду камней, тело безвольно обмякло.
Пожилой боец выхватил связку гранат, с криком бросился на ближайшего врага, стиснув в стальном объятии. Раздался оглушительный взрыв, сотрясший туннель, обломки разлетелись в стороны, клубы дыма заволокли вид. Когда дым рассеялся, на месте взрыва зияла воронка, но от ударной волны досталось и Хищнику — он лежал, скорчившись у дальней стены. Шлем раскололся, броня треснула сразу в нескольких местах, повреждённый визор сбоил, слабо мигал редкими импульсами. Хищник медленно пошевелился, с трудом поднялся на ноги, пошатнулся, неровными шагами ожившего мертвеца двинулся за остальными. Красный свет визора восстановился, но в движениях появилась заторможенность.
Туннель усеялся телами, воздух пропах горелой электроникой. Силуэты в дыму разбрасывали баррикаду, открывая дорогу машинам. Остальные двинулись вперёд, винтовки сканировали пространство, не пропуская ни одной щели. Дрон забился в нишу, едва успев скрыться, и продолжил трансляцию. Камера выхватила тёмные фигуры, пробегающие по коридору. Они целенаправленно приближались к главному убежищу.
— Входную дверь не найдут, — уверенно произнёс Учитель, голос звучал спокойно, хотя на лбу выступила испарина. — Дверь замаскирована в скальной породе, встроена в текстуру. Её и со сканером не отличить от обычного камня. Только мы знаем точное местоположение и код открытия.
Но он оказался неправ. Хищники остановились в нужном месте. Передний протянул руку и медленно провёл по узкой щели. Поднял винтовку, выстрел ударил в центр. Камень раскололся, обнажил контуры массивной двери. Раздался громкий треск, защита убежища включила громкую сирену.
— Срочная эвакуация! Все в глубинные залы! Немедленно! — понеслось изо всех громкоговорителей.
Учитель выпрямился. Лицо вытянулось.
— Что за чёрт, — пробубнил он себе под нос. — Как нашли? Неужели вычислили этих чертей? Срочную связь с инженерами! А у вас что?
На экране связи выплыло лицо Борисыча, командира внешней охраны. За его спиной грохотали взрывы.
— Они прожигают первую гермодверь! — крикнул он. — Мы отходим ко второму рубежу, но нас сомнут — их слишком много и они лучше вооружены. Нам нужно отступить в жилой сектор и заварить проход изнутри!
Руководитель обороны анализировал схему эвакуации. Синие точки ещё не успели покинуть смежные коридоры. Если пустить бойцов Борисыча внутрь, за ними ворвутся преследователи.
— Нет, — спокойно ответил он.
Оператор медленно повернул голову, не веря своим ушам.
— Борисыч, — ровный монотонный голос ворвался в эфир, — приказываю задраить шлюз второго рубежа. Снаружи.
— Но мы в каменном мешке! — голос командира дрогнул. — Там верная смерть!
— Эти пятнадцать минут нужнее детям. Задраить шлюз. Выполнять приказ.
— Это убийство, — в ужасе крикнул кто-то. — Они погибнут.
— Спасая всех, — Руководитель обороны даже не моргнул. — Мы меняем фигуры на время. Здесь не сказка.
Лифты распахивали двери каждую минуту, выпуская новые порции людей. Всё шло без сбоев. Эвакуацию отрабатывали многократно.
Навстречу им бежали бойцы, на ходу накидывая аммуницию. На экране по-прежнему горело лицо Борисыча, отдающего последние приказы отряду.
— Наша задача — не победить, — хрипло говорил он. — Наша задача — умереть не сразу. Каждый не пройдённый ими метр, каждая отобранная секунда, — это десять наших спасенных детей. Работаем на Рубеж. Отступаем секторами, взрываем за собой проходы. Пусть прогрызают себе дорогу через наши тела. Мы — щиты. Роль щита — сдержать удар, даже если щит при этом ломается. Выполнять!
Бойцы принимали инструкцию без страха. Понимали — дорога односторонняя, назад не вернуться, но безопасность тех, кто внутри — важнее. Там их дети.
В коридорах эвакуации никто не толпился, женщины и дети организованно отправлялись в жилые отсеки, мужчины — к складам с оружием.
Лина взяла на себя самое неблагодарное занятие — эвакуацию гражданских. Стояла у входа в лифтовую шахту, лицо покрыто струями пота, а голос срывался от крика, но действовала с хладнокровным спокойствием.
— Пятеро детей, одна женщина с ними! Раненых — в грузовой лифт, не занимайте место! Ты, — схватила за плечо паникующего мужчину, — возьми себя в руки и помоги нести носилки, или я тебя сама на них уложу!
Гомон эвакуации усилился, создавая давящий фон. Люди спешно расходились по коридорам. Лица полны тревоги. В командном зале собралась уже целая толпа.
Все напряжённо следили за движением точек на экране. Красные метки Хищников приближались ко второму рубежу обороны.
— Нам не успеть, — в ужасе проговорил один из наблюдателей. — Смотрите, их там сотни…
— Мы успеваем главное, — жёстко оборвала его причитания женщина с суровым взглядом. — Ковчег активирован. Эвакуация ключевого генофонда идёт по графику — мы давно готовы к нападению. Дети будут защищены, а вместе с ними в глубину спустятся врачи и инженеры. Борисыч и его команда лучше всех знают цену войны. Они покупают нам время для эвакуации. Цена нашего выживания может обойтись им очень дорого.
На огромном голографическом экране в центре зала мигала карта убежища. Зелёные линии периметра загорелись тревожными красными цветами. Нижние уровни переполнены движущимися точками — эвакуированными жителями.
— Эвакуация в нижние жилые секторы завершена, — доложила женщина. — Запасы кислорода и провизии достаточны. Все сидят по комнатам, ждут дальнейших указаний. Основная часть эвакуирована. Шлюзы нижних уровней запечатаны. Последний рубеж пал. Борисыч, а также весь его отряд… остались наверху. Выполнили свой долг.
На минуту в зале воцарилось молчание. Каждый понимал за сухими словами доклада гибель десятков товарищей.
Вперёд протиснулся седовласый старик с бумажками в руках.
— У меня не очень хорошие новости, — буркнул он. — Наша защита экранов в медбоксе сработала как надо, но они, сволочи, использовали арматуру здания для ретрансляции — и передали координаты. Мы уже не можем скрыть местоположение. Надо активировать Занавес.
Учитель сжал кулаки.
— Наш дом! Место, где мы могли жить, радоваться, строить будущее! Наши оранжереи, мастерские! — голос перешёл в крик.
Обычно спокойное лицо исказилось бешеной гримасой.
— Надо активировать Занавес, — повторил седой.
Коренастая женщина возразила.
— Ещё рано. С высокой вероятностью дверь не взломают. Если прорвутся, активируем занавес.
— Что за «занавес»? — шёпотом спросил Виэн.
Тот пожал плечами.
— Взрыв верхних уровней, — пояснил кто-то из бойцов. — Там тротила больше, чем железа — на весь уровень хватит, в огненный шар обернётся. Ни один Хищник не выживет.
Оператор затрясся. Кай и Ада. Вспомнил их без шлемов, уставшие, умные лица.
— Нет! Вы не можете! — воскликнул в ужасе. — Там же пациенты! В медбоксах!
Женщина, не скрывая неприязни, процедила в ответ:
— Парень, ты говоришь не о врагах, принесших нам смертельную угрозу и лишивших нас достижений последних пять дет. Да и вообще решения командования — не твоё дело. Решение окончательное. Риск для всего убежища недопустим. И вообще откуда здесь посторонние?
— Он со мной, — вступился Андрей.
— А ты с кем? — скандально отреагировала женщина. — Любой инцидент в секторе недопустим. Мне не нравится командовать войной. Но я знаю больше вас. Я видела, как отключают свет и люди превращаются в зверей. Я не дам никому пробить брешь в плотине.
К горлу подступила горячая волна гнева. Резко развернувшись, выбежал из командного зала. Бежал, не разбирая дороги, мимо спешащих толп, мимо открытых дверей лифтов. В голове набатом стучала мысль: «надо предупредить!» Дать шанс. Но как это сделать?
Вбежал в комнату, где сисадмин подключил свой ноутбук. Компьютер открыт, на экране мигают строки кода. Дёрнул мышкой, открывая список последних сообщений, пришедших на устройство. Кликнул на «Ответить», набрал по аналогии с последним сообщением: »SEND_MESSAGE: UNKNOWN_TYPE_2016. TEXT: УХОДИТЕ ВНИЗ! ВЕРХ ВЗОРВУТ!!!».
Не ушло, мигнуло красным. Сообщения об ошибке нет. Прокликал строки — в окне сообщения не заполнена строка, светится красным. Нужна подпись. На секунду задумался, потом решительно ввёл: «От Друга». Сообщение помигало на экране и отправилось. Не успел даже понять, успело ли оно уйти.
Истошно завыла сирена, и свет погас, оставив лишь экран ноутбука. Выбежал в коридор в поисках места, откуда можно увидеть происходящее.
Последний акт разыгрался на большом мониторе в коридоре. Плавящуюся дверь бункера затрясло, по ней побежала яркая искра прореза. Тут же мигнул экран, выключилось питание, через секунду появилось обратно — включился резервный контур. На экране появился обратный отсчет: 15, 14, 13… Экран разделился на четыре части. Одна камера осталась на входной двери, другая переключилась на перспективу оранжерей и жилых помещений, третья — на лифтовые шахты, четвертый — опустевший наружный коридор.
На счет «6» в двери возникло небольшое, оплавленное отверстие. Один за другим промелькнули тёмные силуэты. Отсчёт дошёл до нуля, и изображение дрогнуло от сокрушительного взрыва. Первую часть экрана поглотил огненный шар. Потолки оранжерей треснули, лампы погасли, и всё ушло во тьму. В ней прорезались всполохи пожара.
На голографическом экране бушевал огненный ад. Языки пламени лизали своды туннеля, клубы дыма заволакивали все вокруг. Обломки летели во все стороны. Выше по туннелю, где двадцать секунд назад были враги, распространило клубы полыхающее облако.
Стоял, еле дыша. Мир плыл вокруг.
Слегка протрезвел от адреналина — догнал страх последствий. Внутренности свело ужасом. Какое его ждёт наказание?
Экраны не показали происшедшего чуть раньше. Выключение питания в медблоке и синхронное открытие двух пар глаз в соседних боксах. Боевой стимулятор, встроенный в имплант, включился, впрыснув в кровь коктейль, способный оживить мертвеца.
Кай рывком вырвал капельницы из вен. Мышцы, усиленные полимерами, сократились, разбивая бронированное стекло бокса ударом плеча. Ада уже падала с койки в попытке встать на ноги. Он подхватил её на лету.
На коммуникаторе вспыхнуло короткое сообщение. Коротко зафиксировал взглядом и метнулся по помещению, оценивая пути отхода. И вздрогнул. Сквозь монотонное жужжание вентиляции пробился ультразвуковой свист. Хорошо знал этот свист — так воют конденсаторы на подрывных станциях перед тем, замыкая цепь.
До взрыва оставались считанные секунды. К выходу не надо — нет смысла соваться в пекло. Ударом ноги сбил замок с крышки люка с маркировкой «Аварийный дренаж». Чёрный зев колодца вертикально уходил в пустоту, откуда тянуло сыростью и громом падающей воды. Сотни метров до коллекторов грунтовых вод, уходящих в самые недра заброшенных шахт. Прыжок наугад, на сотую процента больше шанс выжить, чем здесь.
— Прыгай! — рявкнул он. — Переходим на цикл. Двадцать минут. Держи воздух!
Не магия, а химия. Старые эксперименты с перфтораном. Кровь — переносчик кислорода. Это позволяло Хищникам выживать там, где тонули подлодки. Кай толкнул Аду в дыру перед собой и, сгруппировавшись, прыгнул следом. В падении успел ударить кулаком по аварийному стопору. Услышал хлопок гермостворки люка над головами — сработала автоматика закрытия.
Шахта сброса охлаждения шла вертикально вниз, и через секунды падения Хищник активировал гидротормоз костюма, увидев внизу демпферный бассейн — многометровый слой технической воды. Удар вышел страшным. Экзоскелет взвыл, гася чудовищную кинетическую энергию, гидравлика брони полопалась бесполезным ломом, но кости спасла. Воздушная подушка, сжатая между двумя шлюзами, сработала гигантским амортизатором, погасив остатки инерции до первого прикосновения.
Сверху расцвел огненный ад. Взрывная волна ударила в закрытую крышку люка, вминая металл, но герметика выдержала. Хищники уже прошли сквозь бассейн и летели дальше во тьму, обдирая броню, скользили вдоль шершавых стен шахты водосброса навстречу воде подземных озёр.
Глава 24
Взрыв оставил на мониторах сюрреалистическую картину. Динамики отключились первыми, грохот и рёв пламени бушевали на голографическом экране без звука.
В глубинные залы пришло странное спокойствие. Все как-то сразу приняли произошедшее. Разговоры, доносившиеся из-за дверей, шли только о распределении ресурсов, обустройстве новых спальных мест и планах на ближайшие работы. Никто не вспоминал о погибших защитниках, о разрушенных оранжереях, о мастерских, где ещё недавно кипела жизнь.
Наблюдая за ними, оператор поражался до глубины души. Он смотрел на всех вокруг и чувствовал, как по спине ползет липкий холодок. Это не было спокойствие героев — жуткая, полуавтоматическая апатия. Женщина в паре метров от него методично перебирала коренья, хотя всего час назад чудом успела сбежать от взрыва. Мужчины чинили лебёдку с таким видом, будто находятся в обычном цеху, а не в братской могиле, заваленной сотнями тонн бетона.
— Я не понимаю, — прошептал Лине. — Они же годами строили убежище. Жили там. Почему так равнодушны? Каждый день разрушают построенное годами?
Лина лишь покачала головой. На экране медленно угасал огонь, являя тлеющие обломки. Она тоже не понимала местной апатии, но привыкла к необычным людским реакциям за годы жизни под землёй.
— Наверное, синдром нижних. Здесь живут те, чей рейтинг годами болтался около нуля. Система вытравила им чувство страха вместе с остальными эмоциями. Будешь паниковать — сожжёшь кислород. Будешь плакать — останешься без соли. Они не то, чтобы храбрые, просто контейнируют эмоции. Для них этот взрыв был очередным днём испытания, и они справедливо считают — им повезло, что они его пережили. Остальные эмоции — непозволительная роскошь.
Виэн пристал с тем же вопросом к Учителю, но тот уже тоже переключился с гневного состояния на обычное, обсуждал распределение задач. Ни намека на переживания по поводу утраты верхних уровней. Траур не входил в число допустимых переживаний. От вопроса отмахнулся, как от несущественной детали.
— Чего переживать? Мы получили отсрочку. У нас теперь много времени для размышлений, — пояснил он на ходу. — Идите в аналитический зал, там карта сектора, обо всём расскажут.
Аналитический зал был разбит на блоки и напоминал вовсе не штаб революции, а бухгалтерию в осаждённом городе. Здесь не пахло порохом — в воздухе стоял пыльный дух старой бумаги и несвежей одежды. Освещение тусклое, едва разгоняли полумрак лампы в защитных сетках над длинными столами, заваленными картами коммуникаций и учётными табелями. Издевательски отсталая версия Улья, в котором оператор провёл свою молодость.
За столами сидели счетоводы Глубины — с воспаленными от бессонницы глазами, пальцы перепачканы графитом. Монотонные голоса выводили нескончаемый речитатив калькуляции списка заданий для выживания:
— Сектор Г-12 — вход забит и недоступен, нужна общая помощь, перенаправьте дополнительную вторую смену к боковым дренажным коллекторам. Да, вывод на голый бетон, если придумаете, как сделать общий вывод — будем благодарны. Да, на голый бетон.
— В третьем баке сублиматов плесень. Срезать, остаток переварить дважды. Если не хватит калорий — урезайте пайку детям в четвертом блоке на пять процентов.
Андрей вырос перед центральным столом, где женщина в поношенном техническом жилете яростно черкала чёрным карандашом в толстой книге.
— У меня прекрасная идея, — тон уверенного в себе профессионала. — Я проанализировал логи. У меня есть решение. Мы можем обмануть Глобал-Протокол. Если мы внедрим патч, основанный на рекурсии…
Женщина даже не подняла головы. Её карандаш с хрустом сломался.
— Парень, — произнесла она свинцовым голосом, — у меня две с половиной тысячи человек, которые через неделю начнут жрать друг друга, если я не найду, куда приткнуть лишние триста коек. Мне плевать на твои патчи.
— Но это выход на поверхность! Мы сможем запустить лифты!
Вот тут она посмотрела на него. Взгляд был пустым и мрачным.
— Лифты? — она даже не усмехнулась. — По-твоему, мы тут сидим потому что не догадываемся на кнопку вызова нажать? Все подъёмники интегрированы в городскую сеть. Они умнее тебя. В каждом моторе стоит блокировщик. Ни один лифт даже лампочки не зажжёт, пока не получит подтверждения валидности кода благонадёжного гражданина у себя внутри. Шахтный мусор вроде нас он даже проверять не станет. Для запуска лифта нужно перепаять управляющие платы на каждом из тридцати уровней, а у нас и олова-то чистого не осталось. Не говоря уж о доступе к уровням.
Она снова уткнулась в свои бумаги, игнорируя посетителя.
— Иди, не мешай занятым людям. У нас тут настоящие проблемы, а не твои компьютерные игры. Оранжереи погибли. Мы заперты в стальном гробу на триста метров ниже уровня земли. Хочешь помочь? Иди на фильтры, там для промывки сорбента постоянно рабочих рук не хватает.
Сисадмин беспомощно повернулся к Виэну, но тот лишь виновато пожал плечами. Мир кодов и алгоритмов здесь и впрямь был нелепой, и никому не нужной сказкой.
— Идем, — Учитель, всё это время стоявший в тени у входа, положил руку ему на плечо. — У них ты, к сожалению, не найдёшь понимания. Они заняты совсем другим. Пойдем в мой сектор. Расскажешь мне про свои патчи.
Он бросил короткий взгляд на зал и добавил тише:
— Они не злые. Просто уже похоронили себя. А я не хочу хоронить себя.
Они пошли прочь из зала, за спиной продолжился монотонный бубнёж инструкций. Сисадмин тащился замыкающим, нащупал в кармане флешку. Только теперь он окончательно понял: убеждать этих людей надо вовсе не в способах взлома. А в том, что они ещё живы.
В маленьком зале они снова открыли проекцию города.
— Мы слушаем.
Кроме Лины и Виэна, пришли ещё несколько энтузиастов. Они сидели с очень с серьёзными лицами, но было очевидно — делают это по просьбе уважаемого Учителя, а не из-за действительной веры в прорыв.
Он решил начать с азов.Активировал голографическую проекцию, и на ней задвигались точки, обозначающие жителей, в сложной, паутинной структуре городской сети.
— Смотрите, — он повёл рукой по проекции. — Я говорил вам об уязвимости системы. О глобальном патче. Его надо внедрять через Control_code_definition, тот самый код, используемый для идентификации, работает через уникальный код каждого человека в сети.
Тот прищурился, внимательно изучал детали проекции, но явно не понимал.
— Объясни попроще. Не все знают теорию.
— Мозг ещё примитивнее, чем я рассчитывал, — пояснил сисадмин. — Гигантский ААА-сервер.
— Гигантский кто?
— ААА-сервер. Authentication, Authorization, Accounting. Аутентификация, Авторизация, Учет. Он получает запрос с биометрическим хэшем человека, и сверяет с базой данных, где прописан РБЛ, затем выдает разрешение на запрашиваемую операцию: открыть дверь, выдать паёк или что там ещё. Ну, или вызвать дрон, если разрешение не даётся. Тупая программа! И её мозг, — рука обвела мерцающее облако данных, — устроен очень просто. Там гигантская, раздутая свалка старого, плохо написанного кода, который никто не развивал, а только бесконечно латали.
Он придвинул к себе проекцию, увеличивая кусок лога из архивов. Выглядел лог мешаниной из серых значков, но сисадмин смотрел на них с восхищением реставратора, нашедшего под слоем копоти подлинник мастера.
— Весь ваш мир, всё ваше благополучие или нищета зависят от одной единственной переменной — РБЛ. Ядро получает запрос от сканера, лезет в базу данных и ищет там число. Целое число, понятное число. Четыре цифры, которые решают, открыть перед вами дверь или упереть в грудь ствол. Но посмотрите сюда.
Он ткнул указательным пальцем в поле идентификатора. Во всём столбце у других было прописано в этом поле четырёхзначное число, у Виэна же вздрагивала метка: 0x.
— И что это? — Учитель с любопытством изучал символы.
— Дом, где живёт призрак. Диагностическая библиотека. При записи этого поля произошёл сбой — возможно, гонка состояний. База данных открылась для записи системных отчетов, и в профиль вместо рейтинга записался вызов активного процесса.
Он перехватил непонимающий взгляд и пояснил:
— Это указатель. Ссылка на конкретный адрес в оперативной памяти. Но что если в графе «Адрес» будет написано не «улица такая-то», а «спроси у соседа справа». Ты послушно пойдёшь спрашивать, а идиот-сосед вместо ответа начнёт рассказывать тебе историю от сотворения мира. Именно так и происходит в этом случае. Когда любой сканер пытается узнать статус логина, то заходит в профиль, видит указатель и послушно пытается прочитать число. Но вместо числа натыкается на ссылку. И проваливается по ней. А так не число.
Его глаза азартно заблестели.
— Понимаете? В рейтинге вместо числа прописан указатель на функцию вычисления Пи, каждый раз, когда кто-то пытается проверить профиль, то проваливается в математическую чёрную дыру. Процессоры захлебываются расчётом, вечно вычисляя очередной знак после запятой. Её процессоры раскаляются, буферы переполняются, логика зацикливается. В нормальной ситуации вся сеть Города могла рухнуть в момент, когда ты первый раз оказался в будке.
— Но не рухнула, — заметил Учитель.
— Вот тут и кроется главный секрет, — сисадмин зло усмехнулся. — Они жутко боятся краха уже непонятной им программы и обвешали её костылями, как новогоднюю ёлку — игрушками. И в самом сердце кода, в главном обработчике ошибок, оставили директиву. Глобальная команда: ON ERROR RESUME NEXT.
Выждал паузу, но увидев лишь недоумение, почти прокричал:
— Это означает: «При любой ошибке — продолжай»! Если программа зависла, данные не читаются, случилась планетарная катастрофа — забудь и переходи к следующей строке! Король среди всех костылей! Самый ленивый и опасный способ заткнуть дыры изо всех возможных. Наихудшая практика на уровне детского мата в шахматах, да и вообще детям материться не следует.
Он начал мерять комнату шагами, размахивая руками.
— Понимаете? Дрон сканирует. Пытается считать профиль. Получает неисчисляемое значение. У него случается паралич, микросхемы плавятся от нагрузки. И срабатывает костыль. Обработчик говорит: «Ой, ошибка вычисления… Ну и ладно, пропустим этот шаг». И забывает выстрелить или заблокировать дверь. Переходит к следующему процессу. Не считает профиль валидным. Считает, встретил не человека, исключение, и его надо игнорировать ради стабильности. При этом сбойный профиль не могут удалить, вычисление — часть процесса, и не могут завершить неисполнимый процесс. А не падает вся эта тряхомудия из-за универсальной затычки в корне управления, которую оставили их предки, не сумев починить.
Он резко остановился, ожидая взрыва аплодисментов и был очевидно шокирован равнодушной реакцией. Один смотрел в пространство перед собой, задумавшись о чём-то. Двое других перешёптывались друг с другом. Лина смотрела с восторгом, но не понимала и десятой части того, что он говорил. Один оператор внимательно слушал, не отрываясь.
Учитель заметил пристальное внимание.
— Извини. Не отвлекайтесь! Так откуда взялась такая штука? Секретный умысел?
— Нет, — Андрей едва заметно качнул подбородком из стороны в сторону, на лице возникла восторженная улыбка тестировщика, нашедшего редчайший баг. — Не умысел. Гораздо изящнее. Такая уникальная ошибка могла случиться только при инициализации.
Вывел на голографический экран наскоро набросанную упрощённую схему базы.
— Миллионы профилей создаются единовременно. В одном потоке им присваиваются стандартные рейтинги — простые, целые числа. В другом, параллельном потоке, ядро генерирует сложнейшие криптографические ключи для самозащиты, используя специальные библиотеки. И вот, на наносекунду, для единственного профиля происходит сбой. Гонка состояний. Модуль шифрования по ошибке записал фрагмент вычислений в ячейку, предназначенную для рейтинга. Программа же тупая. Обычная база данных, не обновлялась целый век. Поле рейтинга — целочисленная переменная. В него физически нельзя записать дробное число. Но когда присваивался рейтинг, произошло следующее….
Он выделил пальцами ячейку, и заговорил вдохновенно, загораясь собственными объяснениями.
— Здесь ждали целое число. А попал сюда результат вычисления функции по этому указателю. Получили 3141.59265 и так далее…- результат внутренней операции. Произошёл конфликт выводимых типов данных. А метод обработки ошибок тупо отрезал дробный хвост для вывода на все внешние запросы. Во избежание слома всей базы. Так и возникла маска. На поверхности — рейтинг 3141. А в глубине лежит вызов указателя на функцию вычисления числа Пи, и, поскольку указатель — не число, система его не может определить и счесть ошибкой. Вот и приходит результат — три тысячи сто сорок один запятая пять девять два шесть пять три пять восемь девять семь девять три два… И дальше. Много дальше. Ньютон тоже не знал дальше.
— И почему Система сама это не исправляет?
— Пытается. Каждый раз, когда возникает ошибка переполнения буфера. Но там, в ядре, стоит костыль — инструкция ON ERROR RESUME NEXT. Если данные не читаются — пропустить шаг и считать операцию успешной. Понимаете? Тут не выдача прав. Просто каждый раз, когда профиль надо проверить, обработка спотыкается, выдает ошибку и пропускает профиль невалидным значением. И надо заставить её спотыкаться гораздо чаще…
— Чтобы это сработало для других! — Виэн продолжил, догадавшись о замысле.
— Для всех жителей, без исключения. Нам не надо разрушать сервера. Надо сделать костыль работающим для всех. Центральной инструкцией. У меня дистрибутив с инструментами взлома. Я создам вирус. Короткая инъекция в базу данных, и мы присвоим этот битый указатель каждому профилю в Реестре. Всем сотням миллионов записей.
Посмотрел на собственные руки, словно увидел в них ключи от мира.
— Расшарим битый указатель на каждого жителя. Присвоим каждому рабочему, каждому чиновнику, каждому бойцу. Запишем ссылку на Пи во все рейтинги. И в ту же секунду Город ослепнет. Вся мощная машина контроля превратится в толпу заикающихся идиотов. Дроны будут зависать при попытке прицелиться, шлюзы будут открываться сами собой, не сумев проверить доступ. Мы не разрушим мир огнём. Мы сделаем контроль программно невозможным. Мы превратим в ошибку все объекты в городе, и система будет вынуждена их всех проигнорировать.
Взял планшет, переместил пальцами проекцию, выделяя красным цветом записи в логе.
— Если сервер авторизации получает запрос, от которого переполняется буфер до ошибки вычисления — в нормальной ситуации происходит зависание. Но здесь стоит защита от дурака: при критической ошибке - пропустить пакет без обработки во избежание обрушения всей сети. Понимаете? Система игнорирует таких людей, считая их возникновение неустранимым, возможно, аппаратным сбоем! Заносит в группу исключений. Такие логины — записи в таблице, помеченной к игнорированию. Она не используется, ведь запросы в ней не могут быть корректно обработаны!
Выдержал паузу, давая всем переварить информацию.
— Мы проберёмся к центральному узлу, — подытожил он. — Используя мой дистрибутив Linux, внедрим Глобальный Патч. И присвоим всем жителям в качестве рейтинга ссылку на вычисление числа Пи.
Оглядел непонимающие лица.
— Давайте ещё проще. Вот есть у вас сортировщик. Берёт он код человека, распознаёт, и кладёт в ящик с номером. Ящик 100, ящик 5000. Но вдруг ему встречается никогда не кончающееся число. Сортировщик приступает к распознаванию этого числа — читает, читает… и зависает. Выбрасывает в сторону с командой «не обрабатывать». Мы не будем ломать сортировщик. Мы напишем на всех надписях такое число. И сортировщик проигнорирует всех!
Хлопнул Виэна по плечу.
— Никто не может изменить твой рейтинг. Любая операция с этим шрамом вызывает сбой. И рейтинг твой удалить нельзя, его указатель — часть собственного криптографического кода. Практически сакральные данные. Удалить такую запись — попытка деления на ноль. Система пробует это сделать, натыкается на критическую ошибку и откатывает действие. Самосохранение важнее чистоты базы данных. И мы, — возвысил он голос. — воспользуемся этим костылём! Да здравствует число Пи!
— Мы породим коллапс! — воскликнул оператор, осознав масштаб.
— Не коллапс. Такой сбой не вызовет падения. И удалить сразу всех Ядро не сможет. Будет вынуждена игнорировать. Добавить всех в группу Заговорённых! И сама выдаст им абсолютную защиту от сканеров и дронов!
— Придумано неплохо. Ещё бы исполнить! — отозвался голос, в нём звучала усталая отстранённость.
— Да запросто. Ну, почти запросто. Надо подобраться к корневым серверам. У них закрыты порты внешнего управления, нужно физически вставить флешку с вирусом.
В ответе прозвучало искреннее удивление.
— Так до тебя до сих пор не дошло?
— Что именно?
Учитель встал, приблизился, и положил ему руку на плечо.
- Подобраться к чему-то физически невозможно. Взрыв замуровал нас всех в глубинных залах. Завал наверху разберут и за годы. Сотни тонн измельченной породы заблокировали все туннели наверх. Лифтовые шахты полностью разрушены. Теперь это просто колодцы, заполненные осыпавшейся породой и мусором. А городские подъёмники нам не подчиняются. Мы отрезаны от мира и находимся на глубине трёхсот метров под водой.
— А как же дренаж? — спросил Андрей.
— Дренажные сифоны — трубы диаметром полметра, забитые решётками. Работают под давлением в пятьдесят атмосфер и выбрасывают техническую воду в подземные реки. Человека там размажет. Пройти там может разве только робот, способный выдержать давление гидроудара. Обычный смертный там не протянет и секунды. Мы замурованы. На месяцы, как минимум. А может быть, и на годы.
***
Со временем на убежище всё же опустился мрак. Подземный туман проник в каждый уголок души. Вместе с ним пришла всепоглощающая депрессия, пеленой накрыла каждого жителя. Знание о трёхстах метрах воды и непроходимых завалах над головой отозвались болезненным эхом, окончательно разрушив последние надежды на возврат к прежней жизни в туннелях. Огни на голографических экранах давно погасли, им на смену пришла равнодушная чернота, а пепел от пожара всё не забывался, продолжал висеть в каждом взгляде и движении мысли. Разочарованные призраки бродили по обширным глубинным залам, шаги эхом отдавались в опустевших проходах, где ещё недавно кипела жизнь.
Жизнь шла по инерции, без прежнего энтузиазма. Люди работали, их движения замедлились, настрой сменился потухшей безнадёжностью разбитых надежд. Ранее весёлые вечерние посиделки ограничивались вялыми пересудами о следующем дне, экономии последних ресурсов, латании прохудившихся коммуникаций. Никто больше не вспоминал о вожделённой поверхности. Каждый безропотно принял участь жизни в изоляции с медленным угасанием, пока не закончатся запасы или не подступит очередная, уже неизбежная катастрофа. Прежняя решимость растаяла.
Недавние символы будущего и упорной борьбы — плодородные оранжереи с мягким фитосветом, мастерские, полные инструментов и созидания — больше не считались предвестниками новой эры, и стали лишь раздражающими обременением для запертых под землёй людей. Не имея ограничений в энергии, Глубина построила мощнейшие гидропонные сооружения и люди могли не опасаться голода, но исчезновение шанса когда-то оказаться на поверхности свело все достижения на нет. По коридорам растекался всеобъемлющий дух уныния.
Оператор чувствовал на себе недовольство. Тени следовали за ним по пятам. Отчаянное сообщение, призванное спасти Кая и Аду, перехватили. Несмотря на уверения, что за десять секунд всё равно никто не мог спастись от такого взрыва. «Это было бесполезно», — пробормотал руководитель обороны, глядя на полыхающий экран, и в голосе не звучало осуждения, лишь принятие неизбежного. Но если он и не выступал против милосердия, то лидеры глубокого убежища настроились куда более прагматично. Андрей, хотя и выступал в защиту, тоже растерял уверенность в себе.
Все произошло в течение нескольких тревожных часов после взрыва. Оператора вызвали в импровизированный зал суда. Коренастая женщина и пожилой мужчина с длинной седой бородой сидели за столом. По обеим сторонам стояли камуфлированные солдаты, их руки лежали на оружии.
Учитель, сгорбившись, молча сидел в стороне, ему приказали помалкивать. В нижних пределах его авторитет не помогал. Власть принадлежала Совету Глубины — тем, кто годами выживал в темноте, считая каждую каплю воды.
— Мы отрезаны, — глухо произнес седобородый старик во главе стола. — Инженеры говорят, основной ствол шахты обрушен. Для пробития обходного штрека нашими буровыми нужно от шести до восьми месяцев непрерывной работы.
Женщина рядом с ним окинула подсудимого равнодушным взглядом — её гораздо больше интересовал подсчёт оставшихся пайков.
— Мы переходим на режим строгой консервации. Запасы гидропоники рассчитаны только на количество жителей. Мы не можем позволить себе содержать лишние рты, особенно склонные к предательству. Виэн, — поставленный голос не выражал эмоций. — Ты совершил попытку контакта с врагами убежища. Неважно, успешна ли попытка или нет, сам её факт — предательство. Ты поставил под угрозу всех нас.
— Но я могу помочь!
— Ты не шахтёр, — отрезала женщина. — Твои навыки бесполезны. А риск твоей повторной попытки контакта с кем-то и наведения на нас нового удара, пока мы заперты, неприемлем. Приговор — утилизация. Мы сохраним твои калории для тех, кто работает киркой.
Он возразил:
— Я не знаю ваших правил! Вы не можете судить меня за неведение. Кроме того, я могу быть полезен. У меня опыт работы с сетью. Даже будучи отрезанными, мы можем использовать старые контакты для связи! Мои бывшие коллеги … Мы можем попробовать поговорить с ними! Возможно, мы найдём другие способы победить, не проникая физически, а атакуя с разных флангов изнутри сети!
Вмешался другой член Совета, нервный толстяк, отвечавший за складские поставки.
— Ты не понимаешь? Мы отрезаны от внешнего мира полностью. Кроме того, твои приятели наверняка под наблюдением. Да и не можем мы тебе доверять. Твои предложения бесполезны.
Женщина поддержала коллегу.
— Ресурсы убежища ограничены. Мы не можем позволить себе содержать тех, кто не приносит пользы и угрожает безопасности. Попытка связи с врагом, неважно, ради чего, преступление. Приговор — уничтожение. Не кормить же тебя за наш счет. Нам не нужны лишние рты в изоляции. И шпионы не нужны. Пусть послужит общине. В бак рециркуляции. Оранжереям нужны удобрения, а в нём семьдесят килограммов полезной органики. Ничего личного, парень.
И всё. Ни криков, ни борьбы. Тихо, без лишних слов, приговорённого сопроводили в небольшую камеру в самом нижнем ярусе. Технический шлюз. Решетчатый пол, а под ним плескала маслянистая вода. Весь покрытый ржавчиной и илом — отсек регулярно затапливали.
— Вода сейчас пойдёт, — сухо бросил конвоир, запирая гермодверь.
Створки схлопнулись с глухим стуком, лишили приговорённого надежды на спасение в последний момент. Виэн припал к решетке, зажмурил глаза, ища утешение в темноте. Стояло удушливое безмолвие, и лёгкий, едва различимый скрежет расколол его куском льда. Поначалу счёл звук игрой воображения, порожденной отчаянием.
Зашипели клапаны. Уровень воды под решёткой стремительно поднимался. Ледяная жижа тронула подошвы. Потряс дверь, задраена намертво. Вода дошла до колен, обжигая холодом. До потолка метра два. Через пять минут здесь будет аквариум, а он — утопленником. Вжался в дальний угол камеры, трясясь от холода.
Глухой удар сотряс пол под ногами. Странно, но звук удара пришёл не из коридора, а снаружи, из-под толщи воды и бетона. По внешней обшивке убежища.
Ещё один удар, сопровождаемый сдавленным хлопком. Воду в камере вспенило резонансом. Ещё удар — и стена, отделявшая камеру от внешнего затопленного коллектора, треснула. Из щели под чудовищным давлением ударила струя мутной воды, чуть не сбив приговорённого с ног.
Очередной взрыв выбил кусок кладки целиком. В камеру хлынул поток. В проёме зашевелилась рука в разбитой, окровавленной перчатке, а следом, тяжело дыша и отплёвываясь, выбрался израненный Хищник.
Кай не вышел — вывалился из пролома. Броня на левом боку вспорота, как на консервной банке, из-под пластин сочилась кровь, смешиваясь с грязной водой. Ада висела на нём безвольной куклой, бронекостюм мигал аварийными красными диодами: »CRITICAL FAILURE«. Её тело рухнуло в лужу, подняв облако брызг.
С разбитой брони стекали потоки грязи. Сорвал с головы жалкие остатки шлема — лицо серое, губы разбиты в кровь. Броня искорёжена, сервоприводы жалобно скрипели, работали с перебоями, дёргано и резко. Двигался на пределе, каждый шаг давался ему с огромным трудом.
Уровень воды сравнялся с проломом. Приток воды остановился. Хищник привалился к стене плечом, с трудом удержавшись на ногах. Сил на улыбку не нашлось, только на гримасу боли. С волос стекала грязь, белки лопнули от перепада давления, залив радужку красным. Подарил ошеломлённому оператору кривую улыбку разбитыми губами.
— Привет, друг, — прохрипел он, сплевывая красную пену. — Ждал гостей? Мы тут слегка промокли. Зарядом переборку пробили, а там кипяток. Чуть не сварились…
Он закашлялся, выплевывая воду. Пленник отрицательно мотнул головой, указывая взглядом на запертую дверь. Хищник стащил с пояса последний магнитный диск, прилепил к замку гермодвери, ведущей в коридор убежища, где стояла охрана.
— В сторону, — прохрипел он.
Взрыв вынес дверь наружу. Двое охранников в коридоре не успели поднять оружие. Кай шагнул в проём. Израненный, с искрящей бронёй, он оставался непреодолимой силой для подпольщиков с самопалами.
Одно движение и первый охранник отлетел со сломанной ключицей. Второй попытался выстрелить, но рука перехватила ствол автомата и удар бронированного кулака отправил его в глубокий нокаут.
— Чисто, — произнёс измученный голос. — Так что насчёт чайку? Аде лучше бы двойной сахар.
Виэн посмотрел на руки, всё ещё покрасневшие после холодной воды шлюза, на изуродованную взрывом дверь. Всего пару недель назад его главным приключением в жизни было являться нерелевантным значением, досадным багом в безупречной логике Города. Но, глядя на пришельца с искрящими сервоприводами над повреждённой бронёй, ему вдруг поразительно ясно пришла мысль: есть и те, кому весь мир, со всеми его социальными лифтами и с безупречными рейтингами, всё равно остаётся огромной ошибкой, подлежащая игнорированию.
Кстати вспомнились слова Андрея о «короле всех костылей». Город — дряхлое здание, подпёртое тысячей гнилых распорок, команда «продолжай, несмотря на сбой» — только одна из них.
Оператор откинулся на мокрую стену, почему-то именно в этот момент он понял, что они не смогут не победить. Властители системы не всесильны, а ленивы и трусливы. Предпочитают жмуриться, и не признавать собственный крах. Андрей утверждает, что если программа держится на костылях, рано или поздно она встретится с ошибкой, той, которую не сможет перешагнуть. И тогда всё её величие рухнет под собственным весом. Нужно просто выбить первую опору.
Часть 5. Над подземельем. Глава 25
Зал Совета — громкое название для расширения в туннеле, где сходились три штольни — битком набился народом. Воздух спрессовался напряжением и страхом. Аварийные лампы, горящие от резервных аккумуляторов, тускло мигали, выхватывая из полумрака напряжённые лица. Бойцы охраны сжимали в руках автоматы, но стволов не поднимали.
В центре полукруга, сидя на уцелевшем пластиковом стуле, Кай выглядел единственным инородным субъектом. Весь в порезах и в царапинах, в лохмотьях высокотехнологичной брони, он всё равно доминировал над пространством.
Пальцы выбивали дробь по пластику подлокотника. Не от страха. На шее вздулись вены, чёрные от переизбытка токсинов. Импланты, потерявшие связь с материнским сервером, сходили с ума. Требовали подтверждающего сигнала от Системы, и не получали. Каждый шорох колотил ударом молота по оголенному нерву. Хищник переживал сенсорную депривацию, сравнимую с ломкой наркомана, но держал лицо каменным. На скулах ходили желваки.
— Раз долг зовёт, не смею мешать, — Кай наклонил корпус вперёд, и сталь искорёженной брони противно скрипнула. Выдал ядовитую улыбку одними губами. — И какой же метод вы предполагаете наилучшим для моей нейтрализации?
Он с ленцой вытянул длинные ноги и с наигранным любопытством уставился на пожилого мужчину с длинной седой бородой в центре зала.
Тот стушевался и нырнул за спины нерешительно столпившихся подчинённых. По рядам пробежал шелест шаркающих подошв. Вокруг инстинктивно отодвигались, увеличивая дистанцию между собой и пленным. В задних рядах упала на пол фляга, и от звона половина присутствующих шарахнулись в разные стороны. Вокруг поднялись нервные смешки, тут же замолкшие при повороте головы пленного в их сторону.
— Войдите в наше положение, — в попытке сохранить лицо возразила коренастая женщина. — Ведь именно вы навели на нас Хищ… таких же, вроде вас. Ваше присутствие здесь, в наших глубинных залах — угроза. Мы обязаны отреагировать.
Присутствующий здесь медленно сел прямее. Кровь уже пропитала повязку на рукаве, капнула на пол. Лицо, лишенное обычной маски шлема, бледнело в синюшном свете ламп. Под кожей на виске тряслась жилка, уходящая куда-то за ухо, к порту импланта. Воспалённые давлением и химикатами глаза пылали лихорадочным, нездоровым блеском, но руки, лежащие на подлокотниках, были абсолютно неподвижны. Никакой суеты при общении с гражданскими.
— Угроза? — переспросил тихо и страшно. — Наверху рядом с нами сдетонировал объёмный заряд, эквивалентный паре тонн тротила. Превратил бетон вокруг в мелкое крошево. Я выжил, упав в водосброс с высоты полусотни метров. Думаете, меня испугают ваши палочки для суши?
Он оглядел зал суровым взглядом.
— Вы хотите судить нас? Ваше право. Но этот парень, - кивнул в сторону Виэна, смиренно ожидающего решения своей участи, — не предатель. Он — единственный из вас… из нас всех, кто сумел разглядеть и понять: война — не стрельба по людям, а борьба за их благо. Если бы не его сообщение, мы бы сгорели, а вы бы так и не узнали способ пролома ваших коллекторов. Он рискнул своей шкурой для отправки предупреждения врагу. В моём подразделении за такое бы дали трибунал. Но вы — вы же не псы системы. Разве в вашем мире подобное не зовут милосердием? И вы тоже его приговорили? Чем вы лучше нас?
Коренастая женщина отвела взгляд, потёрла пятно на столе. Никто не отвечал. Бойцы охраны уставились в пол, не в силах выдержать напор чудовища. Слишком очевидной звучала уродливая правда: в устах бездушной машины для убийств понятие долга звучало конкретнее, чем в приказах командиров. Солдат в заднем ряду со стуком опустил приклад автомата на пол, почувствовав оружие невыносимо грязным.
— Не поймите меня неправильно. Я не перехожу на вашу сторону. Мне плевать на вашу революцию и вообще на ваши жизни. Если завтра я получу валидный приказ от командного сервера, я, возможно, убью вас всех. Но в моём личном списке приоритетов долг жизни стоит выше устава. Парень дал мне шанс, когда меня списали. Я возвращаю долг ему, а не присягаю вам.
Он подытожил в абсолютной тишине.
— Сейчас мы вам не враги. Но при попытке нас нейтрализовать мы заберем с собой половину зала, прежде чем сдохнем. Не примите за угрозу. Чистая тактико-техническая характеристика.
В подтверждение слов он сжал кулак на спинке впереди стоящего стула. Раздался противный скрежет. Толстая труба сплющилась бумажной трубочкой для коктейля, и лопнула по шву. Хищник не замахивался, не напрягался, просто сжал кулак. Охрана отшатнулась: до них дошло: если монстр рванет вперёд, самодельная броня окажется бесполезной жестянкой.
Он явно храбрился, выступавшая испарина на лбу и кровящий рукав делали это очевидным, но тем большее уважение проступало на лицах солдат, стоящих за спинами совета.
— И кстати, — добавила Ада.
Хищница двигалась с трудом, приволакивая левую ногу. От комбинезона сохранились жалкие остатки: оплавленные куски полимера свисали лохмотьями, обнажая серую подкладку и местами — сбитую в кровь кожу. Опиралась о стену, рисовала плечом влажный след, и дышала тяжело, с присвистом. Но взгляд глаз сохраняла острым и собранным.
— Вовсе не мы навели на вас «таких же, вроде нас» — выражение выделилось ядовитым сарказмом, — а вы сами.
— Ничего подобного! — седовласый инженер был настолько возмущён, что даже не побоялся подбежать вплотную. — Сигнал шёл от обоих ваших устройств, два источника, оба из медицинского отсека!
Старик тряс стопкой распечаток логов, и бумага возмущённо шуршала в руках. На носу криво сидели очки с треснувшей линзой, замотанной проволокой. Оскорблённый в профессиональных чувствах, тыкал в воздух листок со строчками кода как неопровержимую улику.
— Протокол «Последний шанс», — перебил Кай. — Когда показатели жизнедеятельности падают до критических, или когда носитель накачан седативными, имплант считает юнита захваченным или мёртвым. Я отключился — имплант решил: объект сдох, и заорал в эфир на всех частотах, вызывая подкрепление. Мы не вызывали кавалерию, вы сами её пригласили, когда вырубили нас. Мы не носители нейросвязи, — он постучал по грубому шраму на шее. — У нас радиомаяки с таймером. Если сервер не получает от моего чипа сигнал каждые пять минут, то считает меня дезертиром или трупом. А если сердце отрубается, включает аварийный маяк на поиск тела. Забрать дорогое оборудование. Мы не звали подмогу. Мы вырубились, и ошейники вызвали хозяев забрать имущество.
- А сейчас? — подозрительно спросила женщина. — Вы фоните?
- Здесь? Под сотней метров гранита и воды? — усмешка вышла кривой от боли. — Физику не обманешь. Сюда не добивает и самая длинная волна. Для Системы мы сейчас мертвы. И поверьте, нам больнее, чем вам. Мой мозг сейчас кипит в собственном соку без внешней синхронизации.
Где-то далеко, за толщей породы, глухо застонала вода в трубах. Монотонное гудение напоминало всем о нахождении в подземном заточении. Капля конденсата сорвалась с потолка и шлепнулась прямо на стол перед женщиной-лидером, тёмное пятно расплылось по пыльной поверхности. Инженер захлопнул рот, в лице мелькнула растерянность. Отступил назад, бормоча под нос:
— То как же… выходит, мы сами…
Лидеры убежища чувствовали себя не в своей тарелке. Коренастая женщина нервно теребила край рукава, старик жевал губы, уставившись в пол. Они походили на нашкодивших школьников, а не вождей сопротивления. Их авторитет, построенный на уверенности и силе, таял с каждой секундой под напором двух полумёртвых чужаков. Спорить бессмысленно. У них уже не получилось справиться с двумя пленниками, избежавших собственными силами от неминуемой смерти, да ещё и сорвавших казнь приговорённого.
Но и полностью доверять им не могли. После короткого совещания, они, хоть и неохотно, решили согласиться с их пребыванием в убежище, но дальнейших решений о статусе или роли не приняли. Согласились выделить помещение и медицинскую помощь, под условием оставаться под постоянным наблюдением.
Хищники не возражали. Камеры их не беспокоили — вся жизнь прошла под их прицелами. Но от медицинской помощи отказались, не до конца доверяя.
— Спасибо, капельницу не надо, — ядовито отклонил предложение Кай, набирая полные руки аптечек и медикаментов, — в прошлый раз не понравилась. Аллергия, наверное.
Учитель предложил им своё гостеприимство, и вскоре они обосновались в небольшой комнате, где он обычно проводил совещания с ближайшими соратниками.
Комната Учителя оставалась самым сухим местом в Нижнем Пределе. Вся завешана старыми геологическими картами, пожелтевшими от времени. На ящике из-под боеприпасов тускло светил самодельный ночник из банки и диода. В его отблесках гротескно изломанные тени от фигур падали на стол и стены. Оператор присел на край стола, постаравшись не задеть стопку деталей — на столе лежала россыпь разобранных датчиков.
— Что за печаль? — поинтересовалась Ада, изучая поникшие фигуры. — Завтрак невкусный?
Андрей провел ладонями по лицу, размазывая копоть. Пальцы тряслись, сцепил руки в замок, скрывая дрожь пальцев. Впалые щёки и тёмные круги под глазами отрисовывали из лица мультяшный череп. Смотрел сквозь пространство в стену, там за толщей бетона их отделяли от выхода миллионы тонн породы.
— Мы замурованы. Полностью. Взрыв заблокировал все выходы. Сотни тонн обломков и оплавленного металла. Лифтовые шахты разрушены. Мы на глубине трехсот метров под землей, и… под водой. Навечно.
Кай пренебрежительно фыркнул. Ада тихонько рассмеялась. Смех прозвучал кощунственно. Виэн вздрогнул. Ожидал чего угодно — гнева, истерики, но никак не веселья. Захотелось ударить наглую девчонку, стереть с её лица неуместную ухмылку, но прекрасно понимал — не успеет даже замахнуться. Крепче зацепил край стола, чувствуя шершавое дерево, царапающее ладонь. Перевёл мрачный взгляд с одну на другого, и обратно.
— Это правда смешно? — ещё более подавленным тоном спросил он.
— Для Кая это вообще не проблема, — снова усмехнулась Ада, пожимая плечами, — ему надо дать немного отлежаться, прийти в себя, и он найдёт путь наружу.
Все обалдело вытаращили глаза на непонятную самоуверенность.
Кай пояснил:
— Мой организм модифицирован для таких перегрузок.
Расстегнул ворот комбинезона. Его шея имела странный, сероватый оттенок и текстуру, напоминающую мелкую чешую или плетение углеволокна. Вдоль сонной артерии шёл ряд вживленных портов, закрытых заглушками. Скафандр, надетый прямо на мясо и кости.
— Не кожа. Биополимер. Выдерживает давление, расплющивающее батискафы. Мне нужен водолазный скафандр или хотя бы герметичная капсула для инструментов, и я протащу оборудование через затопленные сифоны. А найти путь в лабиринте — ерунда. Я — Хищник. Охота в слепых зонах — моя работа.
— Хорошо, ты можешь выплыть. Но чем поможешь нам?
— Понятия не имею. Я даже не уверен в своём желании делать подобное. Но если рассуждать гипотетически, то я могу выплыть и вытащить за собой катушку с оптоволокном. Проложить пуповину на поверхность. Закреплю позицию в сухом секторе и у вас будет проводная связь и направляющая. По тросу можно пустить лебедку и вытягивать капсулы. Горизонтально-вертикальный лифт.
Учитель взял со стола карандаш и завертел в пальцах — манера из прошлой жизни, когда нужно принять сложное решение. Карандаш хрустнул, сломанный пополам. Обломки отлетели, с громким стуком упали на стол.
— Совет даст добро. Им так страшно быть в одной норе с вами. Отдадут всё, лишь бы вам не было рядом. У нас есть сварочные коконы. Использовали раньше для ремонта подводных кабелей в коллекторах. Старые, ржавые гробы, с ручными манипуляторами. Двигателя нет, но с лебёдкой. Если загерметизировать швы, должно подойти.
Перехватил скептическую реакцию Виэна.
— Не удивляйся. Совет даст добро, — жёстко усмехнулся он. — Я сейчас пойду к ним и объясню простую арифметику. Вы двое, — он прямо посмотрел на опасных гостей, — потребляете калории, дышите нашим воздухом и нервируете охрану. Вы — пороховая бочка в замкнутом пространстве. Им выгоднее выдать вам снаряжение и вышвырнуть в шлюз на верную смерть, чем ждать, пока ваши импланты снова взбесятся. Я выбью нужные коконы не в помощь героям, а для утилизации опасных элементов. Ещё и спасибо скажут за ваш уход наружу.
Повернулся к Андрею.
— Готовь флешки с кодом. Они будут курьерами. Если кто и способен проплыть через ад и добраться до Ядра — то эти двое. Используй промышленные модули памяти, в керамических корпусах. Пластик не выдержит давления. Залей эпоксидкой, надо сделать из них кирпичи. Данные должны пережить, если носитель… — осёкся, взглянув на Аду, — если произойдет непредвиденное.
— Нет, — твердо перебил Учителя сисадмин. — Никаких флешек.
Все взгляды сконцентрировались на сисадмине — от него протеста никто не ожидал.
— Мы не сможем обойтись одним только переносом файлов. Потребуется перепрошивка ААА-сервера на лету. Там могут быть нестандартные порты, динамическое шифрование и архитектура, опередившая мой патч на сто лет. Просто вставить флешку недостаточно. Если скрипт выдаст ошибку, кто его поправит? При всем уважении к их крутизне, это солдаты, а не хакеры.
Подошёл к столу и ударил ладонью по карте.
— Я должен быть там. Физически. Мне нужна клавиатура и прямой доступ к терминалу. Иначе мы поцарапаем броню Системы, но не убьем её.
— Но ты не выдержишь давления, — со скепсисом возразил Хищник. — Твои лёгкие схлопнутся на тридцати метрах.
— Поэтому я полезу в защищённый кокон, — парировал Андрей. — И буду отдыхать там, пока ты потащишь меня грузом. Кнопку «Enter» должен нажать я.
Он произнёс слова твёрдо, но внутри всё похолодело. Мысленно представил себе сварочный кокон. Тесный цилиндр без двигателей, болтающийся на тросе под миллионами тонн воды и бетона. По сути — герметичный гроб с иллюминатором. Если трос оборвётся или тот, кто его потащит, погибнет, он останется там навсегда, медленно задыхаясь в абсолютной темноте, пока давление воды не раздавит стекло.
От страшных мыслей к горлу подкатил ком. С силой впился ногтями в ладони, спрятанные за спиной для унятия предательской тряски рук. Логика подсказывала, что таков единственный путь к победе, но животный инстинкт выживания вопил не ходить, остаться на твёрдом полу. Ему потребовалась вся сила воли, чтобы сохранить лицо.
— А я? — спросил Виэн.
— А ты будешь нашими руками. Нам нужно восстановить старую проводную связь с поверхностью. Ищи и монтируй кабели, оператор. Они вытащат кабели наверх, и ты подключишь канал к нашему оборудованию здесь. Будешь диспетчером операции. Без продуманной координации команда прорыва проявит себя на поверхности не эффективнее стайки слепых котят. Я иду в Совет.
С этими словами он направился к выходу. Когда вышел из комнаты, Кай усмехнулся.
— Крепкий старик.
Ада тихо прибавила:
— И сумасшедший.
— Но говорит правду, — медленно произнёс Андрей. — Вы — самый реальный шанс добраться до ядра. И, пожалуй, и ваш лучший шанс. Вы станете первыми носителями моего патча. Когда вы будете на поверхности, вас больше не смогут контролировать.
Кай осторожно, почти нежно, поправил сбившуюся повязку на плече Ады. Та перестала смеяться, но не отстранилась.
— Помнишь Инкубатор? — тихо спросил он. — Десять лет назад. Мы сидели у решётки вентиляции, и я обещал — однажды мы будем под небом без фильтров. Я не нарушаю обещаний.
— Ты тогда обещал — мы будем вместе до самой смерти или до неба без фильтров, — поправила она, накрыв его пальцы ладонью. — Первое пока получается лучше.
— Мы выберемся, — резко отрезал Хищник. — И уйдём вдвоём. Как договаривались.
В коротком обмене фразами пряталось гораздо большее, чем было высказано. Клятва двоих, не имеющих никого в целом мире, кроме друг друга.
Наверху скрипнула балка, приняла на себя вес грунта, оседающего под тяжестью породы. Удар прошёл насквозь, посыпалась пыль с потолка. Лампа мигнула, но продолжила гореть. Их похоронили заживо, но и в склепе вдвоём дышалось немного легче.
Глава 26
Жизнь вошла в привычное русло. Эхо взрыва утихло, погибших оплакали, и община вернулась к исполнению своей главной задачи — сохранении ресурсов. Для двух с половиной тысяч человек никаких глобальных изменений не произошло: те же смены на гидропонике, тот же ремонт протекающих труб, та же темнота. Они не знали — за дверью изолированного технического сектора, куда закрыт доступ даже членам Совета, горстка людей готовила операцию, способную перевернуть мир.
Жизнь Глубины поддерживали огромные баки-рециркуляторы, где в зеленоватой взвеси хлореллы рождался кислород. Механические лёгкие требовали постоянного присмотра: фильтрации воды и контроля ламп. Воздух получался чуть сладковатым и с травянистым привкусом, но зато чистым, без примеси масляной взвеси.
В мастерских Глубины процветал культ реинкарнации. Ни один обломок пластика или ржавый болт не считался бесполезным мусором. Из корпусов старых серверов производили под заказ всё что угодно — от лопат до сковородок, из выработавших ресурс кабелей плели прочные веревки для спусков. Общество, построенное на тотальной переработке ресурсов, сделало креативность одним из главных условий выживания.
Быт Глубины напоминал осажденную крепость. Основным местом встречи стал узел фильтрации, на котором выдавали нормы дистиллята. Очереди не походили на прошлые — тут стоял постоянный гомон, жители обменивались новостями, оставляя подписанные фляги. Вода пахла медью и старыми трубами, зато можно было не сомневаться в честном распределении — лишний глоток не купишь ни за какие баллы рейтинга, но обязательно получишь, если он действительно нужен.
Вода в Глубине священна. Огромные опреснители, построенные два века назад ещё советскими инженерами, забирали солёную грунтовую воду и превращали её в дистиллят. Процесс требовал прорвы энергии, все знали, что цена каждого стакана воды — около трёх часов работы ручного генератора.
В изолированном техническом отсеке Андрей и Виэн работали без связи с поверхностью — эфир мёртво молчал, толща породы наглухо экранировала все попытки прохождения сигналов. Они использовали передышку для оттачивания оружия.
В небольшом, тускло освещённом зале, выделенном им специально для экспериментов, сисадмин склонился над ноутбуком, пальцы скользили по клавиатуре, выбивая команды. Экран щедро сыпал зелёные строки кода на чёрный фон. Развернул на сервере локальную копию городской сети. Создал целый набор городов-призраков, цифровые модели будут использованы для отработки ударов.
— Мы не можем атаковать сейчас, — объяснял он, загоняя в эмулятор очередной пакет данных. — Но мы напишем скрипт. «Отложенную смерть». Если мы получим линк, пакет уйдет в сеть.
— И что сделает?
— Помнишь, как ты перестроил контроль дронов для игнорирования меня сканерами? Вот такой принцип мы и используем.
Оператор оживился.
— Информационный мусор?
— Хуже. Бюрократический ад, — поправил его Андрей. — Мы не забьём канал. Мы отправим миллионы валидных бессмысленных запросов: жалобы на качество воздуха, формы на вывоз и утилизацию отходов, запросы на перерасчет рейтингов и прочего мусора. Каждый пакет подпишем валидным, но битым ключом, по аналогии с твоим. Когда канал откроется, мы выплеснем всё разом. Мониторинг будет открывать каждое сообщение, пытаться прочитать, спотыкаться об ошибку, логгировать сбой и отправлять отчёт об ошибке самому себе. И захлебнётся, обрабатывая мусор. Подавится собственными отчётами об успешной обработке пришедших заданий.
Оператор тут же загорелся идеей. Генерация ложных сообщений — то, в чём он поднаторел за годы работы лучше всего.
— Я знаю приоритеты. Если забить канал аварийными сигналами канализации, Система сразу понизит им приоритет. Но если отправить миллион запросов на подтверждение лояльности высшего командного состава — их невозможно проигнорировать. Класс А-1. Они бросят все ресурсы на такую самопроверку. Мы заставим змею сожрать собственный хвост.
Ученики вводили команды наощупь, имитируя работу в условиях полной темноты или сильной вибрации. Собрали для себя тренажеры из разбитых клавиатур. «Ваш мозг должен помнить раскладку лучше, чем собственные пальцы», — твердил сисадмин, засекая отсчёт по секундомеру.
Виэн часто пересматривал свой личный архив. Среди живой жизни записи о мёртвых выглядели бессмысленными, но позволяли ему лучше разобраться в самом себе. Он всё яснее понимал — всё это время он собирал не историю, а гербарий из засушенных страданий. И тем сильнее понимал необходимость создать новое, с логами без удаления по регламенту.
Глядя на окружающих, всё чаще вспоминал смены в Улье. Когда удалял данные о вот такой жизни. Изучая свой накопитель, он больше не видел на нём сокровища, но настоящее кладбище. «Я должен измениться», — шептал он сам себе, — «должен стать и быть настоящим.»
Первой значительной победой оказалась не атака. Хищники едва не сошли с ума. Тела, лишенные управляющего сигнала, бунтовали, выкручивая суставы фантомными приступами.
Андрей потратил несколько суток, изучая доступный код импланта через диагностический порт. Восстановить связь не смог, но зато разобрался с принципом защитной блокировки: чип требовал подтверждения статуса «В сети» и блокировался, не получая его.
— Я не могу вернуть чипу доступ, — пояснял он, подключив нейропорты к локальному серверу убежища, где развернул наспех написанный эмулятор. — Но я создал программную заглушку. Ваш имплант получает пустой пакет данных каждые три секунды. Значит, связь установлена, но приказа нет. Режим ожидания. Должно сработать.
Когда скрипт запустился, Кай впервые за двое суток глубоко и расслабленно вдохнул. Боль ушла, оставив бескрайнюю пустоту.
— Пусто, — проговорил он, ощупывая затылок. — В голове… пусто. И тихо.
— Добро пожаловать на нашу планету, — устало улыбнулся спаситель, и широко зевнул. — Или, говоря точнее с технической точки зрения, в режим автономной работы. Отныне вы принадлежите сами себе. И ещё бонус — когда выйдете на поверхность, заглушка не перестанет работать, если не отключите сами.
Молчание в голове пьянила Хищников сильнее чистого кислорода.
Сон без координат и целей был гораздо глубже, но в нём очень часто возникали тени «Инкубатора». Они просыпались в поту, когда эмулятор на мгновение давал сбой, и в голову фантомными звуками прорывался статический шум. В такие моменты руки Кая крепко сжимали края койки и пальцы оставляли на металле глубокие вдавленные вмятины. Способ напоминания — здесь сигнала нет, а значит, не может быть никаких команд.
Ещё они заметили — без Ядра время тянулось, как резиновое. День, ранее расписанный на наносекунды оперативных задач, тянулся бесконечно. Теперь они могли по полчаса смотреть на падение капли воды с ржавого карниза. Бесполезное занятие давало ощущение собственности над собственной жизнью.
Годами нейроны бомбардировала линейная связь, заглушая собственные мысли.
Привыкнув с детства к красным фильтрам и пометкам «цель/угроза», они впервые восприняли мир в цветах. Запахи, вкусы, смех, всё вызывало восторженное любопытство.
Тренированный Хищник неожиданно для всех оказался неутомимым выдумщиком на игры. В большом игровом зале, наполненном эхом детского смеха, он взялся учить детей акробатике.
— Надо прыгать выше! Каждый мускул должен быть готов! Мы не прячемся, мы готовимся! Стоп! — перехватил падающего мальчика у самого пола. Пальцы, способные гнуть железные прутья, поймали ребенка с невероятной лёгкостью.
— Разбиваться нельзя. Надо летать.
Кай не играл. Учил выживать, но чрезвычайно бережно.
Показывал перемещение в полной темноте, как ориентироваться на движение воздуха. «Ваша кожа — лучший радар», — шептал, обучая находить выход из лабиринта пустых ящиков с закрытыми глазами. Малыши замирали, учась ловить малейшие дуновения от вентиляторов, и понимать по направлению воздушных потоков, где искать выход.
— Смотри под ноги, — цепко поймал за шиворот споткнувшегося мальчишку. — Твоё тело мягкое. Поверхность пола — твёрдая. Если упадёшь на неё неправильно, поломаешь кости. А с поломанными костями ты не боец.
Дети висли на нём котятами на большом дереве. Кай восхищал их не силой, а ощущением — рядом с ним с ними ничего не случится. Дети чувствовали: это существо может разорвать танк голыми руками, но детей никогда не обидит. Для того, чье детство прошло в казармах смерти, возня и смех стали самым великим открытием. Оказывается, с помощью силы можно не только ломать, но и ловить тех, кто падает.
Он беспрестанно возился с детьми большим и добрым зверем, никогда не выпускающим когти во время игры. Учил владению телом, учил также любить движение, как и он сам.
Его смех часто разносился по коридорам, вперемешку со звонкими голосами малышей, с упоением повторявших все движения за наставником. Они прыгали, ползали, падали и вставали. Передавая навыки тем, кто в них больше всего нуждался, он обрёл своё истинное предназначение — защитника.
Иногда он замирал посреди зала, слушал внутреннюю тишину, не веря в происходящее. Без команд Ядра не трактуя объекты биосигнатурами, он увидел в них друзей. Новая оптика пугала сильнее, чем любая битва, поскольку в ней обретались вещи, которые можно потерять навсегда.
Ада удивительно легко вошла в женские коллективы. Вместе с другими ухаживала за ростками в оранжереях. Проводила там дни и ночи, часами вела упоительную возню с гидропоникой, с трепетом трогая пробивающиеся листья. Она выросла в казарме, и неучтенное живое для неё всегда было запрещено, поэтому пропахшая землей и полная буйной растительности оранжерея, явилась для неё настоящим храмом.
В женском блоке её сначала встретили настороженным молчанием. Но когда Хищница молча огляделась, взяла тяжёлую лейку и помогла с промывкой дренажных каналов, лёд тронулся. «У тебя руки солдата, а глаза — потерянного ребенка», — сказала ей старая Лидия, ответственная за посев грибницы. Ада не знала, как ответить, и продолжила работать, но, никогда не знавшая семьи, вдруг ощутила общность с этими незнакомыми людьми.
Тренированный глаз различал оттенки зелени, не выдаваемые спектрометром. Уверенно указывала на пожелтевшие края листьев со словами «Куст просит азота». Чувствовала глубокое родство с растениями: они тоже заперты под землей, привязаны к искусственному свету и трубкам питания, но продолжали упорно стремиться вверх.
Спала короткими урывками, чтобы не расставаться с ними, даже обустроила себе лежанку прямо в оранжерее, чтобы быть рядом с растениями круглые сутки. Шорох растущих грибов и звук капающего конденсата для полива успокаивали много лучше седативов. Она вела дневник посадок, записывая наблюдения за растениями легендами о великих битвах и победах. Для созданного для разрушения Хищника созидание — самая сильная форма реабилитации.
Она ощущала стремление к жизни в стеблях острее любого фермера. Интуитивно ощущала родство душ с этими растениями, которые тоже тянулись к свету вопреки управляющей миром тьме. Её советы были основаны не на сухом расчёте, но на проявлении настоящей заботы: ей совершенно искренне хотелось дать комфорт каждому маленькому зелёному ростку.
— Оно — живое, я с ним всегда разговариваю, — рассказала она однажды Лидии, осторожными движениями подвязывая сломанный стебель. — Ему не нужно ничего для роста. Один только свет. Странно. И красиво.
Она не только выполняла поручения, но и привносила в работу в оранжереях армейский порядок. Хаотичная ранее забота приобрела строгий распорядок и это тут же сказалось на эффективности.
— Если изменить угол подачи света на такой, — говорила, указывая на фитолампы, — то мы получим на десять процентов больше урожая.
Её аналитический ум оказался бесценным для оптимизации распределения ресурсов, организации обучения и ухода за растениями. Спокойствия и рассудительности в оранжереях действительно не хватало, и Хищница быстро завоевала уважение.
Лина часто заходила к ней. Они составляли интригующе противоречивый союз: эксперт в искусстве выживания в тенях и мастер сражений на свету. Их нередко видели сидевших рядом за чисткой оружия, и обсуждающих цветы, растущие на поверхности для тех, кто не верит в вечную серость мира.
И Кай, и Ада ощущали себя под землёй гораздо более подходящими этому миру, чем собственному. По вечерам все собирались в Камине — центральном зале. Открытый огонь настрого запрещен, но работала мощная тепловая пушка. Передавали новости, перешивали одежду и сидели плечом к плечу. Место обмена принесёнными байками и фантазиями о мире будущего, в котором не будет никаких рейтингов. Тут в цене были сила, выдержка, ум и взаимопомощь — качества, подавленные или утилизированные на поверхности.
Но любимым временем Кая и Ады всё же были общие ужины. На общей раздаче, где стояли на постоянном огне огромные чаны со смесью лишайника и сублиматов, собирались круги для рассказывания историй. Хищники нередко попадали в центр, как немногие из обладающих настоящим опытом жизни на поверхности, в ненавистном, но таком желанном мире. Вдали от тотального контроля у них появилась возможность обрести истинную человечность.
Туннельный хлеб — густая лепешка из измельченных грибов и овсяной муки, высушенная на горячих трубах парогенераторов, являлся основным рационом коммуны. Вкус пресный, но куда более честный, чем синтетические шоколадные батончики. Еда, созданная работой сотен рук, и теплом от родившей зерно земли.
Уже на третий день вечером Кай тихо сказал:
— Посмотри на них. Устали. Боятся завтрашнего дня. А мы — мы не умеем.
— Мы не умеем бояться, потому что знаем цену страху, — ответила Ада, и уголки губ поползли вверх. — Для них подземелье — тюрьма. А для нас — первое место, где никто не приказывает нам убивать. Мы здесь не выживаем, а живём. И на мой взгляд, у нас получается всё лучше.
Теперь они часто сидели вдвоём на обломках старой дрезины в самом тихом углу зала. Без шлемов и брони непривычно хрупкие телами. «Если мы не вернёмся…», — начала он, но он перебил, сжал ей руку. Им больше не требовались длинные речи — синхронность их мыслей дошла до тождественной.
Андрей не ограничивался подготовкой диверсии.
В дальнем тупике собралась группа из пятерых, Учитель и Лина отбирали их лично. Самые смышленые инженеры и пара подростков. На ноутбуке, подключенном к старому терминалу, он развернул для показа целый набор вариантов виртуальных систем.
— Наверху хотят, чтобы вы оглохли и ослепли, — говорил он, тыча пальцем в экран с запущенным зелёным терминалом. — Поэтому стёрли все знания, могущие дать вам силу. Но Linux вернёт их вам. Операционка из мира до очищения. Позволяет управлять устройствами не в качестве пользователей, но настоящими хозяевами.
Местные инженеры привыкли к неизменяемости прошивок и поначалу воспринимали командную строку магическим кристаллом — детской игрушкой. Когда первый самодельный контроллер освещения послушно мигнул по команде из строки терминала, в лаборатории на несколько минут воцарился восторг благоговения. Осознание того, что мир действительно подчиняется командам перепрограммирования, оказалось именно тем волшебным чудом, что заставило уверовать самых отчаянных скептиков. Один из стариков-техников заплакал, глядя на символы на мониторе — в его детстве отец рассказывал ему о командах для железа, а он не верил.
Виэн смотрел на сисадмина и видел безумца, носителя того самого безумия, заставившего человека однажды изобрести колесо и огонь. «Он не меняет код», — думал он. «А меняет определение бытия.»
Андрея слушали с завороженным вниманием, лица выражали смесь недоверия и интереса, когда сисадмин объяснял основы алгебры и логики, простыми словами рассказывал о файлах и протоколах, о модели открытых системных интерфейсов. На старых носителях создавали сотни копий дистрибутива, тиражировали платформы. Новоявленные адепты горели любыми новыми задачами и ухватывали забытые принципы на лету. Проводили за терминалами круглые сутки, не делая перерывы даже на сон.
Пришлось ввести комендантский час на посещение лаборатории.
Посетителей учили гигиене шпионажа — искусству оставлять ложные следы в логах и обходить пассивные сканеры. Рассказывал им об эпохе «Открытого Кода», когда любой мог менять что угодно, написав пару строк кода. Многие воспринимали истории сказками о временах волшебной магии, которая подчинялась каждому, кто умел логически мыслить.
Кай тоже нередко приходил послушать. Без диктата Ядра мир стал для него слишком ярким — часто требовалось заземлиться. Снятый блок контроля перестал контролировать уровень его гормонов и каждый новый оттенок вызывал у рецепторов настоящий взрыв, что бы это ни было — новый привкус травяного чая или оттенок кислоты в хлебе. Он иногда специально выходил в коридоры, касался шершавых стен, чтобы напомнить себе — он в реальности, не в зацикленном симуляторе.
Техники круглосуточно возились со сварочными коконами. Усиливали иллюминаторы, накладывали дополнительные слои герметика и монтировали ручные лебёдки. Каждый шов проверяли под максимальным давлением, малейшая микротрещина на глубине в триста метров превратит капсулы в раздавленные консервные банки.
Кай готовился к погружению. Методично снимал с батискафа лишние модули: датчики, блоки удаленного управления, ретрансляторы. Капсула становилась легче.
— Железо, — объяснял окружившим подросткам. — Оно не делает меня сильнее, лишь защищает шкуру. Сила никогда не в броне, а всегда в руках того, кто внутри неё.
Методично зачищал поврежденные пластины брони. Хищником больше быть не собирался, но панцирь был ощутимым преимуществом в предстоящем походе. На внутренней стороне нагрудника нацарапал короткое имя. Маленький акт веры — личный оберег, он всегда становился сильнее в её присутствии.
Ночью, когда объявляли режим сна, Глубину наполняло мягкое синее свечение от фитоламп. Виэн стоял у окна лаборатории, глядел на спящую коммуну. Завтра всё может перемениться до неузнаваемости, и нужно быть готовым к изменениям. Код готов, команды тоже, и даже темнота не была враждебной. Затишье перед бурей, которая либо очистит мир, либо поглотит его навсегда.
Глава 27
Настало время.
Воздух в глубинных залах вибрировал от предвкушения и напряжения. Последние приготовления завершены. В тренировочном зале — самом большом открытом помещении перед выходом, где ещё недавно звучал детский смех, воцарилась атмосфера боевой подготовки.
Спокойный голос Ады звучал твёрдо и решительно.
— План проще самоубийства, — начала она без прелюдий, и развернула трёхмерную проекцию выходов на поверхность. — Мы разделим операцию на три фазы, — она отметила точки входа. — Первая фаза — «Вскрытие». Группа Кая выходит через технический ствол и захватывает тяжёлую лебедку, чтобы обеспечить нам быстрый подъём. Вторая фаза — «Теневой бросок». Группа Кая создаёт шум на поверхности и, пока внимание патрулей занято, вторая группа проходит через заброшенные штреки под самый фундамент Цитадели, и выходит вот здесь. Третья фаза — «Инъекция». Мы захватываем терминальный зал и удерживаем периметр ровно столько, сколько потребуется для полной загрузки патча в ядро. Без лишних перестрелок двигаемся к цели. Если мы застрянем в бою на любом из этапов — мы проиграли всё. Мы — два наконечника стрелы. Кай прорубает путь через затопленные сектора и отвлекает основные силы внешнего периметра, я возглавлю группу прямого проникновения через технические горизонты Цитадели. Мы не можем ждать, пока основная армия прогрызет завалы. Мы пойдем там, где не ждут человека: через вентиляционные шахты охлаждения ядер и дренажные коллекторы. Работа в мёртвых зонах будет проходить без поддержки, то есть без права на ошибку. Сколько бы нас ни пало, последний обязан довести Андрея с кодом до терминала. Мы — смертники, но мы единственные, кто знает архитектуру врага изнутри.
Бойцы диверсионной группы слушали инструктаж, не упуская ни звука. Все прекрасно осознавали: единственный шанс на успех в борьбе с подготовленной защитой — тщательное планирование. Даже самые опытные бойцы не способны долго продержаться без поддержки.
— Мы должны будем действовать без остановок, — говорила, обводя взглядом каждого. — Любое замедление — недопустимо. Кай проложит путь и активирует линк. Тут же начнётся суматоха. У нас появится лаг всего в несколько минут, за которые мы должны добраться до Цитадели. В противном случае заблокируют подходы, а железо толщиной в полметра не преодолеть выстрелами. Нас интересует не бой, а цель. Наша задача — доставить патч.
Инструктаж продолжался, уточнялись детали плана, каждый фиксировал свою роль. Главное было уяснено: носителей патча надо доставить до физического расположения Ядра.
Цитадель возвышала над Городом монолитный шпиль из бетона и полированной стали. Расположенная в географическом центре нулевого сектора, пронзала смог, уходя верхушкой в чистые слои атмосферы. Сердце Глобал-Протокола, защищенное не только стенами, но и рядами колючей проволоки под напряжением, с каскадами электромагнитных полей между ними. Где-то внутри прячутся корневые сервера, через которые работают все системы контроля города и всех его обитателей. Здание не имело окон на нижних ярусах — лишь глухие плиты, способные выдержать прямой ядерный удар. Воплощение абсолютной власти, могучей и безжалостной, безразлично взирало на человечество с недосягаемой высоты всемогущества.
Пока в зале проводили совещания, готовясь к прорыву, сосредоточенный до предела оператор сидел перед мерцающими экранами. Приближался пик его диверсии. Пальцы, не чувствуя клавиш, вводили последние команды. Предстоит создать отвлекающий маневр невероятного масштаба, аналогов такому ещё не бывало в истории.
Эмулятор замигал надписью «INITIATE_MASS_DECEPTION: COVENANT_EXPIRATION_ALERTS. TARGET_ALL_URBAN_SECTORS. PRIORITY_LEVEL_ALPHA »
Виэн не собирался забрасывать сеть мусором вслепую, он рассчитывал географический резонанс. Основной удар спама направлен на северо-западный промышленный сектор, там будет создана иллюзия массового бунта на заводах переработки биомассы. Система перебросит туда резервы и оттянет их от зоны портала «Южный дренаж», куда пробивается Хищник на батискафе. «Если я создам критическую перегрузку в узле маршрутизации 40-бис, — лихорадочно соображал оператор, — то ближайшие перехватчики уйдут в циклический перезапуск». Выстраивал невидимый коридор молчания, чтобы синхронизировать падающие локальные сегменты сети с предполагаемой скоростью движения Кая. Каждая строка кода стала реальной форой, расчищающей путь через джунгли поверхности.
Когда будет активирован доступ, на поверхность хлынет информационный шквал. Сотни тысяч ложных сигналов об истекающих Заговорах охватят весь город, по всем секторам. Голограммы на улицах замигают так часто, предупреждая о немедленной проверке, что все улицы засияют красными огнями. Терминалы выдачи талонов обезумеют, сообщая о понижении РБЛ у тысяч граждан. На центральных дисплеях, отслеживающих состояние Заговоров, вспыхнут сотни тысяч красных точек, и каждая потребует немедленной реакции.
Дроны дезориентируются потоком противоречивой информации и замечутся в воздухе. Полёт металлического роя в небе над городом моментально вызовет коллапсы. Получая ложные координаты опасных объектов, начнут сталкиваться в воздухе, падать, разлетаться искрами и обломками. Патрули, брошенные на ложные тревоги, устроят войну друг с другом из-за полной дезориентации. Сирены станут реветь без остановки, разнося панику по всему Городу. Ну, во всяком случае, так должно получиться.
Если массовая истерия, обрушенная Виэном на город, сработает, то окажется прекрасным отвлекающим маневром и очистит небольшой сектор на поверхности от излишнего внимания патрулей, создавая, пусть и на короткое время, брешь в контроле.
Дальше Кай проложит кратчайший путь до Цитадели по верху и отвлечёт на себя внимание контроля. Это даст группе прорыва возможность добраться до места подземным путём.
Кай понимал: подъём — лишь первая ступень. Основная задача — выйти на поверхность, захватить тяжёлую транспортную платформу и закрепить лебедку над техническим колодцем. Так можно будет вытащить всех остальных. Андрей с ноутбуком и Лина со знанием слепых зон — они должны пройти в следующем коконе. Сисадмин выглядел бледным, пальцы бегали по сумке с инструментами, в сотый раз проверяя содержимое. Лина в последний раз проверяла остроту лезвий, Хищница монтировала остатки штурмовой брони. Странный союз: реликт прошлого, беглянка из трущоб и сломанный солдат. Но такое сочетание навыков, знаний и опыта делало их непредсказуемыми для контроля.
Пока для поверхности готовили план вторжения, Кай готовился к подъему. Внимательно осматривал кокон, небольшой, неказистый, но надежный аппарат, способный выдержать колоссальное давление. Лицо серьёзно, движения — выверены.
Его отправились провожать все вместе. Ада на секунду прислонила плечо и шепнула «Вернись!». Традиционное прощание.
Кивнул, не отводя прикованного к манометрам взгляда.
— Я всегда возвращаюсь, — глухо ответил он.
Традиционный ответ.
Присутствие на поверхности — критический фактор. Он должен устроить демонстративную бойню в административном квартале, отвлекая внимание контроля. Пока дроны будут фиксировать биосигнатуру дезертира и стягивать силы к месту прорыва, остальные проберутся через заброшенные ветки старого метро прямо под фундамент Цитадели. Путь слишком узок для целой армии, но вполне подходит для небольшой диверсионной группы. Прямое проникновение в святилище ААА-серверов требовало физического контакта, возможного лишь при скрытном подходе. Он будет сражаться наверху, принося ад на улицы, а вся команда станет призраками в туннелях, подбираясь к горлу врага.
— Сейчас всё по-другому, — тихо ответила она только для него. — Ты видел, как на нас смотрят. Я тоже видела.
Что-то необычное в голосе заставило повернуться. В её взгляде, обычно собранном и расчётливым, встретил то, чего никогда не видел раньше — отражение мечты.
— Они заслуживают возможности жить. Растить детей под настоящим солнцем для игр, а не под фитолампами — для войны. Они заслуживают своего шанса. Даже если нам такой никогда не достанется.
Кай молча дотронулся тыльной стороной ладони щеки подруги, почти незаметным, но очень точно выверенным жестом. Истинная цель войны предстала перед ними без прикрас. Не за выживание. Не за своё будущее, за то будущее, которое увидели здесь.
Учитель протянул полные ладони тяжёлых коробочек, похожих на бруски детского мыла.
— Держи подарок — электромагнитные гранаты. Должны выводить из строя любую электронику в радиусе десятка метров. Вот сюда нажимаешь и кидай. Подгадай попасть взрывом ровно через три секунды.
Кай повернулся боком, Учитель запихал бруски в прорезь комбинезона.
— План такой, — хриплый от напряжения голос Кая, тащившего тяжеленный батискаф в руках, оставался спокойным и уверенным. — Я пройду первым. Я буду прокладывать путь, ставить геодатчики, искать наименее разрушенные проходы через камень и затопленные туннели. Моя задача — построить безопасный маршрут. Учесть каждый миллиметр. Выжить и обеспечить правильный путь для геодатчиков. По ним потом будут пробираться остальные. Когда я достигну поверхности, я подам сигнал и трос потащит следующий батискаф.
Обычный подъем кокона занимал бы слишком много времени — переправка всей армии по одному растянулась бы на неделю. Поэтому был запланирован безумный ход: добраться до депо техобслуживания и угнать ремонтную платформу «Крот-М — тяжёлую технику, оснащенную мощными магнитными захватами и двигателями на сжатом воздухе. Платформа сможет вытянуть из шахты сразу десять грузовых контейнеров за один цикл, и сократит переброску всего подкрепления до сорока минут. Риск заключался во встроенном GPS-маяке каждого „Крота“, который в ту же секунду выдаст позицию Кая. Но иного способа доставить реальную силу для быстрого подъема команды не существовало. Для этого нужна техническая мощь, не поможет никакая инженерная хитрость. Ладно, найдут по сигналу — пожалеют об этом. Туда ещё добраться надо.
Триста метров водной толщи, забитых обломками, могут оказаться смертельной ловушкой даже для его адаптированного организма. Неизвестные течения, острые края металла, способные вспороть полимер, обвалы могли похоронить заживо — и это лишь часть известных опасностей. А сколько ещё скрытых угроз там таилось? Миссия могла стоить жизни, но он был готов к любому испытанию.
Но только не к тому, что ждало впереди.
Перед самым входом в тоннель Кая окружили дети. Малыши, те, кого он так упорно тренировал, не отпускали. Они цеплялись за ноги, руки, маленькие ладошки крепко держали комбинезон. В их глазках стояли слёзы.
— Кай, не уходи! — плакала маленькая девочка, прижимаясь к его ноге. — Останься с нами! Ты же обещал научить нас летать! Ты ведь наш самый лучший летун!
— А кто будет играть с нами в «Хищника и мышку»? — добавил маленький мальчик, глаза налились влагой, но он сдерживал слёзы, ведь Кай назвал его настоящим солдатом. — Ты же самый быстрый, Кай! С тобой нам никогда не страшно!
— Ты самый-самый лучший, Кай! Не уходи! — кричал другой ребенок, пытаясь дотянуться до его лица, голос дрожал. — Останься!
Тоненькие детские ручки, доверчивые, полные любви глаза.
Ада смотрела на партнёра, не узнавая его. Она и раньше видела, какими взглядами провожают его обитатели Глубины. В этих взглядах не было страха перед машиной убийства — в них горела надежда. За эти дни он окончательно завершил путь военного юнита. Воплотился вождём, тем самым лидером, за кем идут не по приказу сервера, а по зову сердца. Самые суровые бойцы невольно выпрямляли спины, когда он проходил мимо. Давая их детям уроки акробатики, он вернул веру в возможную победу над себе подобными, показав себя настоящим человеком. Одержал главную победу над врагами — стал для них тем, за кого стоит сражаться.
Он почувствовал, как в груди сжалось что-то с такой силой, что физическая боль от ранений, от недавнего взрыва и страх предстоящего смертельного подъёма показались нелепыми шутками. Он, несокрушимый Хищник, привыкший к боли и опасности, к равнодушию системы, к логике выживания, оказался беспомощнее новорождённого котёнка перед искренними слезами чистой и неподдельной привязанности. Плачущие дети, их вера, любовь — то, чего он не испытывал никогда в жизни. Расстаться с ними оказалось в тысячу раз труднее, чем пройти сквозь огонь и воду, сквозь давление сотен тонн, сквозь неизвестность. С трудом скрыл нахлынувшие эмоции, лицо осталось непроницаемым, лишь чуть напряглись челюсти.
Он опустился на колено, чтобы быть с ними на одном уровне, взгляд задержался на каждом детском лице.
— Слушайте меня, мои маленькие бойцы, — мягкий тон, но твёрдый голос, никто даже не догадывался, каких титанических усилий ему стоила эта твёрдость. — Я ухожу сделать ваш… наш мир лучше. И вы сможете играть не только здесь, но и наверху. И вам больше никогда не придётся прятаться. А вы останетесь и будете тренироваться ещё усерднее, чем раньше, потому что вы — наше будущее. Я вернусь. И тогда мы будем летать вместе, обещаю.
Осторожно отстранил детские ручки, и пряча взгляд, подхватил шлем. Надел, хотя сейчас тот мешался. Снял снова. Рванулся к двери, но его опять задержали. Тонкие пальцы захватили рукав в стальной захват.
В раздражении, стараясь скрыть эмоции, резко повернулся.
В руках он сжимал тяжёлый цилиндр — автономную реактивную торпеду «Скат», переделанную техниками Глубины в единственный способ преодолеть вертикальный ствол шахты против нисходящего потока воды. Мощный кавитационный двигатель должен создать воздушный пузырь, снижая трение и позволяя взлететь вверх со скоростью пули. Внутри торпеды также находился компактный плазменный резак — автоген, он должен проплавить путь через гермозатворы верхних уровней. Без этих сорока килограммов даже в своём биополимере он превратится в кусок мяса, раздавленный толщей воды. Железный пропуск на волю, единственный клык, и надо будет прогрызть им выход на поверхность из затопленной шахты.
— Что ещё?! — выкрикнул он, открыв красные и напряжённые глаза.
Вместо ответа Ада приблизилась вплотную. Ладони легли на его щеки, и Кай ощутил обволакивающее тепло её дыхания, нежность губ мгновенно заглушила весь шум, всю боль, всю усталость. На долю секунды мир сузился до этого тепла от единственного прикосновения. Когда она отстранилась, он, потерянный и обескураженный, смог выдавить лишь глупое:
— За что?
Она улыбнулась в ответ, в её взгляде вспыхнула яркая и неземная искра, которую никогда нельзя спутать, увидев.
— За тебя, каким ты стал для них. И для меня тоже, — прибавила чуть слышно, но он услышал. И увидел, как преобразилось её лицо, обычно похожее на застывшую маску из полимера.
Жёсткая складка у губ разгладилась, глаза, привыкшие искать цели в сетке тепловизора, потеряли сфокусированность, вспыхнули изнутри мягким сиянием. Время в подземелье изменило облик воительницы, напитало её новой силой, внутренней. Шрамы на щеках перестали смотреться следами от войны, просто отметилась на лице долгая дорога. Бывшая Ада-Хищница выглядела женщиной, нашедшей причину созидать вместо уничтожения, и стала такой. Преображение изумляло — рождение души в теле, созданном исключительно для войны. Улыбнулась ещё раз на прощание, и на этот раз он узнал эту улыбку. Такая улыбка бывает у тех, кому есть что терять. Теперь есть.
Герметичная камера захлопнулась, клапаны зашипели, и пол залила водой.
Его отделял от гибели блок «Титан-4» — массивный шлюз из вольфрамового сплава, единственный барьер для удерживания напора на затопленные горизонты. Снаружи давили триста метров чёрной воды, стремились раздавить убежище. Затворы плиты шлюза едва заметно прогибались внутрь. Инженерное чудо прошлого века, рассчитанное на работу даже в условиях планетарной катастрофы, еле выдерживало напор чудовищной нагрузки. Стоит открыть внешнюю створку, и батискаф вышвырнет в мир, где само пространство сдавит его со всех сторон с силой гидравлического молота в тридцать атмосфер. Назад пути не будет: разница давлений заблокирует замок для каждого, кто не обладает мощью сервоприводов.
Но теперь он знал: то, что ждало впереди — просто ерунда. Он обязательно выполнит поставленную задачу. И вернётся.
Глава 28
Батискаф медленно погружался в кромешную тьму.
Кавитационный двигатель выл, создавал вокруг аппарата паровой кокон. Корпус передавал вибрацию в кости, резонировал с имплантами. Инерционные компенсаторы работали на пределе, с трудом гасили рывки в узких изгибах затопленного коллектора. За иллюминатором стояла абсолютная тьма, редкие вспышки сонара выхватывали проплывающие мимо скелеты обломков конструкций. Кай вёл аппарат по памяти и по направлению внутреннего компаса, маневрировал между рухнувшими перекрытиями. Каждое движение требовало невероятной точности, при малейшей ошибке батискаф заклинит в узком горлышке сифона. Будет качественная металлическая могила на дне затопленного мира.
Триста метров водной толщи, забитой обломками, представляли собой смертельную ловушку. Сейсмические сканеры выхватывали из мрака искорёженные балки, куски арматуры, целые секции разрушенных лифтовых шахт. Неизвестные течения сбивали аппарат с курса, острые края металла ежесекундно угрожали вспороть обшивку. Весь путь был сплошным испытанием на прочность для человека и аппарата.
Динамик выдал резкий сигнал опасности — прямо по курсу зашевелилась огромная масса обломков. Осел грунт, выдавил кусок арматуры, гарпуном полоснувшим по внешнему корпусу батискафа. Оглушительный скрежет прорезал тишину, аппарат накренился, теряя плавучесть. Рванул рычаги управления, вывел двигатели на форсаж. Секунды растянулись в вечность, пока проводил аппарат через потоки мутной воды, затягивающих в разлом. Колебания воды пошатнули два крупных обломка, они начали сближаться, лишь невероятная отточенность реакций позволила сбросить балластом кусок обшивки и проскользнуть в сужение зазора за мгновение до окончательного смыкания тонн материи за спиной.
Для сохранения спокойствия не хватало даже выдержки Хищника, пока маневрировал между преградами и обходил обвалы. Десятки раз думал — конец, но усиленные ткани и доведённая до абсолютной способность к выживанию, позволяли сохранять ясность мысли. Угрозы смерти он никогда не боялся — всегда видел в ней лишь очередную ошибку, которую обязан устранить. У него есть цель — построить безопасный маршрут с учётом каждого возможного миллиметра из препятствий на пути.
Он не управлял аппаратом, стал живым процессором обработки входящих сигналов. Репликатор сонара выдал каскад ложных отражений от обломков, и он отключил систему фильтрации, перешел на интуитивное считывание вибраций. Решения рождались раньше, чем логика успевала их осмыслить и обосновать. Резкий импульс левого двигателя, батискаф еле успел уклониться от стального барьера, тут же удар по кнопке для аварийного сброса, рывок вверх. Давление проникло в каждую клетку тела, модифицированные лёгкие еле выдерживали режим экстремальной компрессии.
Сзади разматывалась пуповина — катушка с армированным оптоволокном, защищённым дополнительным слоем свинца. Инженерный шедевр подземных техников под руководством Андрея: индукционные переходники должны позволить подключение к старым магистралям. Вооружение — сплав грубой механики прошлого с отчаянной изобретательностью инженеров. Восстановленный бронекостюм Кая через нейроинтерфейс соединили с управлением Ската. Человека и машину слили в единый таран, который должен пробить дорогу к свету.
Изоляцию глубинных залов приходилось сохранять из-за параноидального контроля Системы над почвой. Любой проводник, проложенный наверх, распознавался как аномальная электропроводность. Сканеры глобал-протокола постоянно сканировали грунт, и любая медная жила работала антенной, могущей выдать координаты убежища. Проложить кабель значило привести врагов прямо к дверям Глубины. Но если информационный шум Виэна ослепит сеть, дерзкий проброс проводника наверх станет возможен. Кабель за спиной должен быть оказаться не обычным проводом, но первой ниточкой связи, которую не должны суметь перерезать.
Подъём «Ската» действовал на подземные коммуникации как локальное землетрясение. Мощные струи кавитационного двигателя крошили гнилой бетон и обрушивали кусками своды старых технических колодцев. Он оставлял за собой шлейф из рухнувших перекрытий и разорванного металла. Путь вверх лежал через кости старого города, и «Скат хирургическим ножом вскрывал эти слои.
Спустя мучительные минуты датчики показали выход. Батискаф с глухим скрежетом пробил тонкую стенку, и Кай обнаружил себя в сухом и замусоренном тоннеле. Тяжело дыша, распрямил напряжённые руки, хрустнул суставами. Поднял голову. Прямо над головой висел аварийный люк на поверхность.
Не стал терять времени. Выбравшись из аппарата, закрепил на своде потолка кумулятивный заряд с плазменной начинкой. Отойдя за выступ, нажал на спуск. Сдавленный хлопок взрыва прозвучал негромко, но пол колыхнуло как водную гладь. Кусок бетона рухнул вниз, открывая пролом в старый технический штрек метрополитена. Подтянул себя на руках и выбросил тело на сухую, запыленную платформу. В лицо ударила застойная пыль. Сверился с инерциальной картой и понял — вышел в расчётном секторе с точностью до сантиметра.
Виэн знал своё дело и рассчитал всё досконально точно.
Кай бесшумно открыл люк и вылез наружу.
Пора приступать к настоящей работе.
Прежде чем отправиться вглубь района, он вытянул из герметичного отсека батискафа тонкий, бронированный кабель оптоволокна. Отыскав сервисный щиток старой городской магистрали, взломал замок и соединил контакты. Выбрал место для геодатчика, активировал.
Теперь надо обеспечить маршрут высадки. Продолжил движение, фиксируя гео маркеры через равные отрезки. Тайминги поджимали.
Надо успеть сделать всё по плану.
Согласований перед стартом хватило, чтобы отпечатать каждый шаг на подкорке.
Шаг первый — активация цифровой завесы. Не банальная спам-атака, а каскадная перегрузка всех узлов, в первую очередь — аутентификации. Когда оптоволокно будет подключено, тысячи уличных сканеров начнут выдавать критические ошибки, требуя от дронов-наблюдателей возврата на базы для диагностики. Возникнет мёртвое окно — три-четыре минуты абсолютной слепоты периметра. Без визуального подтверждения Ядро не сможет отправить Хищников на перехват, сочтёт сигналы о прорыве обычным аппаратным сбоем в зашумленной сети. Кай использует этот момент для покидания затопленного колодца и закрепления позиции на поверхности.
Лазерный тестер на мгновение мигнул красным, потом зажёг ровный зелёный свет датчика. «Линк установлен», — пронеслось по внутренней связи. Данные из Глубины потекли в сеть поверхности. Мусор Виэна попал в узлы маршрутизации, готовясь превратить архитектуру Глобал-Протокола в лабиринт неверных адресов и ошибок.
Второй шаг — «Наведение моста». Надо захватить пульт управления служебным подъемником в депо. Критическая точка: нужно поднять батискаф, и ещё протащить неповреждённым армированный кабель связи через триста метров породы. Дальше каждый цикл будет занимать считанные секунды, но для тех, кто пойдёт снизу, время будет тянуться вечностью. Надо будет постоянно контролировать подъём, отсекая любые попытки автоматики заблокировать шахту. Когда первая группа бойцов Грома будет на поверхности, плацдарм можно официально считать захваченным. У них возникнет путь отхода и прямая связь с Глубиной».
Едкий воздух ударил в ноздри, но он едва заметил перемену. Вокруг — лабиринт серых зданий промышленного района. Голографические баннеры, некогда демонстрировавшие образцовый порядок, мигали и искажались, транслируя бессмысленные комбинации символов, а то и вовсе зависая, обдавая округу мерцающим, болезненным светом.
Продвигался максимально быстро, стараясь держаться ближе к стенам зданий. До транспортного депо «Север» добежал за три минуты. В тени заправочного модуля стояла тяжёлая ремонтная платформа «Крот-М». Бесшумно занял место за пультом. Вырвал блок управления, разодрал провода. «Синий к жёлтому, жёлтый к синему» — бормотал он, прилаживая выданный сисадмином блок заглушку. GPS-датчик в последний раз мигнул синим и погас. Машина покорно вышла из гаража.
Из технического люка как раз высунулась голова первого бойца. Заработал импровизированный лифт-лебедка.
— Принимай, — прошептал ему Кай, уступая водительское место. — Иди по вектору Б-12. Создавай как можно больше шума, но не вступай в затяжной бой.
Боец прикоснулся к голове — приказ принят. Платформа медленно скрылась в дыму.
В шлеме ожил закрытый канал связи. Сквозь статические помехи зазвучал приглушённый голос.
— Я в секторе метро 7-бис. Пробираюсь через дренажные системы под фундамент Цитадели. Андрей и Лина поднимаются.
Вывел на визор её координаты. Глубоко в тылу, пойдёт в обход основных патрулей. Сигнал слабый, но стабильным.
— Держитесь курса, — передал в ответ. — На поверхности уже выступает цирк, всё внимание сейчас не на нас.
Она подтвердила получение коротким двойным щелчком. На выбранном маршруте зафиксировались, готовы к выполнению самой главной части плана.
Через несколько секунд из закрепленного люка вынырнули бойцы первой группы. Воздух наверху с непривычки оглушил их отсутствием затхлости.
Андрей вылез из проёма первым, судорожно прижимая к груди защищенный кейс с ноутбуком. Побледневший, лицо покрыто слоем цементной пыли. Лина тенью скользила следом, по стенам метался луч фонаря, укреплённого на винтовке, сканировал все ближайшие выходы в туннели.
Раздался шум, наверху что-то обвалилось. Хищница оказалась рядом в одно мгновение, прикрывая корпусом от возможного обстрела.
— Как там наверху? — выдохнул сисадмин. — Патч работает?
Короткий кивок в ответ. Бардак наверху как раз и даст им необходимые секунды форы для последнего броска. Третий шаг плана — «Призрачный путь» — полностью лежал на плечах Ады. Пока на поверхности разгорается хаос, она ведёт остальных через Линию 7-бис. Туннель не использовали десятилетиями, датчики движения давно обесточены. Сначала двигаются в полной темноте, ориентируясь по меткам на карте. Затем перейдут в туннель, а там уже включат фонари и прибавят ходу. Система не ждёт отсюда атаки, считает Линию 7-бис полностью заваленной. Подберутся под самые стены Цитадели не обычными незванными гостями — вирусом, проникшим под кожу гиганта.
А на поверхности творилось безумие.
Сверху доносился механический визг. Кай задрал голову и увидел хаос обезумевших насекомых, потерявших строй из-за поражения вирусом Виэна. Машины больше не патрулировали сектора -атаковали друг друга, принимая соседей по строю за неавторизованные цели. Один, объятый пламенем, ударил в жилой блок, рекламные голограммы на стенах вспыхнули каскадом, и по одной погасли. Логика ядра сыпалась соломенным домиком — патрульные боты роем висели в воздухе, по кругу запрашивали идентификацию для прохода через пустые зоны. Город ослепило следование собственным правилам — автоматика реагировала на сигналы о приоритетных ошибках и полностью игнорировала реальное перемещение отрядов повстанцев.
Хаос в городе стремительно нарастал. Горожане растерянно замирали на тротуарах, у них переставали действовать браслеты, мигающие фиолетовой ошибкой доступа. Уличные терминалы лили на экраны бессмысленные потоки данных, привычные голограммы счастливых семей расползались во все стороны дёрганым месивом из пикселей. Сталкиваясь в небе, дроны падали на пустые дороги, вызывая панику у автоматических служб очистки. Всё произошло слишком быстро для паники — никто не понимал, как надо жить и что делать в мире, где приказы внезапно сменились бессмысленным шумом. Город не бунтовал, впал в ступор, парализованный неспособностью контроля обработать бессмысленных запросов.
С визгом пролетела машина с заклинившими винтами, искры и обломки разлетелись о бетонную стену неподалёку. Другой, остервенело паля по голографическому баннеру, прожигал в стене за ним обугленные дыры. Диверсия превратила город в поле боя с самим собой.
Из-за контейнера вылетел очередной механизм. Оптический сенсор мигал жёлтым, а не красным оттенком. Программу атаки не отработал, лишь издал серию странных скрежещущих звуков, словно спрашивал, что происходит. Кай швырнул мини гранату. Вспышка — и механизм рухнул на землю, рассыпавшись на части.
Из-за угла выскочила фигура — низкорейтинговый гражданин, сжимавший в руках ржавый лом. Взгляд безумен, движения непредсказуемы. Увидев Кая, бросился на него с диким криком.
Тренированный Хищник легко увернулся, одним движением перехватил руку с ломом и выбил из рук. Дезориентированный человек упал на колени, а победитель не тратил времени и помчался по улице.
На перекрестке разыгралась жуткая картина: два отряда, лишенные связи с центром, вели бой на уничтожение. Остаточные команды протокола защиты территории не позволяли узнать вчерашних напарников, не имея возможности обновить данные о составе отрядов. Из канализационных люков, почуяв безнаказанность, полезли Крысы. Одичавшие мародеры нападали на дезориентированных граждан и грабили терминалы. Анархия на поверхности бурлила кипящим котлом. Бойцы службы контроля, чьи рейтинги обнулились из-за сбоя в базе данных, казнили друг друга за «нелояльность». Группа скользила сквозь ад, старались не привлекать внимания воюющих киборгов, пользуясь тем, что их мир сузился до красного прицела визора.
— Слушайте задачу, — Кай негромко диктовал указания в шлемофон. — Группы, разделите направления. Первая группа атакует узел распределения питания в секторе Г-4. Вторая — захватывает ретрансляторы на крышах. Избегайте жертв, ваша цель — не удерживать объекты, только максимально привлекать к себе внимание. Заставьте стянуть все резервы к административному периметру. Пока будут подавлять ваши бунты, мы пройдем через мёртвую зону прямо к терминалам Ядра. Ада, ты ведёшь всех низом. Я иду верхом и обеспечу огневой коридор. Если мы не будем на месте через полчаса, нас раздавят количеством. Встретимся у входа. Вперёд!
С улицы гремели рёвом моторы. Две гусеничных машины неслись навстречу друг другу, поливая друг друга безумным огнем. Мусорная каша Виэна не просто дезориентировала военные подразделения, но свела их с ума. Они воспринимали друг друга угрозой и открывали огонь на поражение. Трассирующие линии прошили бетонные стены, вызвав фонтаны искр. Бронетранспортёр, получив прямое попадание в корпус, взорвался, разбросав обломки брони и завалив часть улицы. Победитель вылез наружу, спрыгнул на землю, чуть не упал, сам дезориентированный близким взрывом. Повернул голову и увидел группу прорыва. Сенсор ярко вспыхнул, поднял винтовку, прицелился.
Кай успел первым.
Его движение размылось от скорости. Увернувшись от выстрела, схватил за ствол и резким движением вырвал оружие. Завязалась молниеносная рукопашная схватка, но бесперспективная против лучшего бойца Инкубатора, использующего знания о собственных слабых местах. Удар в сочленение брони, перехват, бросок. Враг рухнул на землю, шлем треснул, сенсор погас.
Его команда двигалась по серым улицам, используя укрытиями разрушенные голографические проекции и нагромождения мусора. Бойцы использовали монотонность в однотипных зданиях для маскировки. Проскальзывали через узкие проходы между домами, забегали в тёмные сквозные подъезды, жались к стенам, избегали обнаружения. Вверху продолжали метаться дроны, иногда сталкиваясь или разбиваясь о здания. Город — гигантский, больной организм, агонизировал, разрушаясь изнутри.
Дроны уже не наводили прицелы, палили куда попало, выплескивали мгновенно боезаряды. Команда сражалась с ними, не щадя сил. В условиях нарастающей анархии слаженные действия делали их сверхэффективным организмом. Вдали оглушительно взорвался заряд.
— Пошло дело, — крикнул Кай, любуясь полыхающим заревом на небе. — Наш выход.
Путь лежал к самому сердцу, к Ядру, к центральному узлу, расположенному высоко над городом. Там располагались корневые серверы, надежда и цель.
В это время группа в командном зале внимательно следила за мониторами, транслирующими данные с поверхности.
— Посмотрите! — воскликнул кто-то, указывая на экран. — Терминалы выдачи талонов зависают!
Один монитор показывал людей у автомата раздачи. На экране беспорядочно мигали символы. На другом мониторе завис голографический баннер, рекламировавший одобренные товары, который сначала транслировал обрывки стихов, а затем и вовсе завис, выдав системную ошибку.
— Они там сходят с ума, — пробормотал Виэн, губы растянулись в тонкой улыбке. — Контроль не может обработать шум. Воспринимает его сбоем, исправляет по мере разумения, но лишь усугубляет своё положение.
Вспыхнул новый экран, показал центральную улицу. Лоялисты, до сих пор слепо следующие правилам, проявляли агрессию. Те, у кого РБЛ падал из-за ошибок, считали это наказанием за неправильные мысли, и в попытках побегов провоцировали дополнительные столкновения. Кто-то дрался за талоны, повсюду вспыхивали короткие, но яростные стычки между рассерженными гражданами и силами правопорядка. Службы контроля реагировали с огромной задержкой, действия теряли точность. Поверхность погружалась в коллапс, не виденный уже много десятилетий.
Учитель удовлетворённо потёр ладони.
— Хорошо. Всё по плану. Даст группе прорыва свободу перемещений. И немного времени.
Глава 29
Группа прорыва стремительно двигалась по разрушенным улицам. Безумие на поверхности, созданное диверсией оператора, прикрывало от нежелательного внимания. Мигающие баннеры, столкновения лётных механизмов и обезумевшие граждане обеспечивали прикрытие, пока они пробирались к цели. Путь лежал к Цитадели — центральному узлу.
Здание центрального узла построили неприметным, но внушительным. Небоскрёб, копия сотен других серых коробок, той же высоты и архитектуры. Однако Ада знала — тут сконцентрированы самые передовые по местным меркам защитные механизмы. Нет дронов снаружи, нет патрулей Хищников вокруг. Зато есть статический периметр, пропускавший разрешённых граждан, и стоявший незримой стеной для нежелательных гостей. И, конечно, целый набор сюрпризов для гостей внутри.
— Здесь, — тревожно проговорила она, держа винтовку наготове. — Ничего не происходит. Нет охраны. Странно.
Андрей достал модифицированный ноутбук, подключенный к модулю беспроводной передачи. Открыл терминал, бросил запрос. Значок сети замигал, устанавливая соединение. — Виэн, твой выход, — пробормотал себе под нос.
Сигнал не проходил и пришлось тратить драгоценные секунды на настройку маршрутов.
— Мне нужно минут пять, — бросил Лине. — Предоставьте их мне.
Та кивнула и скомандовала:
— Занять места для обороны!
Едва успели закрепиться на выбранных позициях, налетела банда Крыс — человек пятнадцать оборванных фигур с дубинками, ножами и самодельными ружьями. Глаза горели алчностью, а голодный вой летел по улице. Увидев группу прорыва, тут же надвинулись, уверенные в лёгкой добыче.
— Отдать всё ценное! — прорычал предводитель, размахивая ржавой трубой, и ружья Крыс выплюнули сгустки едкого дыма, выпуская самодельные пули.
Команда отреагировала мгновенно. Винтовки выплюнули очередь выстрелов, прожигая землю перед ногами Крыс. Бойцы, закаленные в схватках в подземелье, заняли оборону. Началась жестокая перестрелка и рукопашная схватка. Удары дубинками встречались со щитами, ножи сверкали в тусклом свете, но бойцов сопротивления хорошо обучили.
Лина отбивалась от нападавших, и меткими выстрелами из пистолета, модифицированного в электромагнитный, деактивировала подлетающие близко дроны. Ада призраком появлялась среди Крыс, её сокрушительные удары моментально выводили из строя наиболее агрессивных.
В середине боя появился Кай и устроил армагеддон в локальном масштабе. Оставшиеся Крысы с визгами разбежались, решив, что на них напали все Хищники города разом.
Сигнал наконец добрался до цели. Снизу пришёл отклик — подтверждение. Цифровые бойцы внизу уселись за подключенные терминалы для генерации потоков сообщений — десяток, сотней, тысяч. Меняя адреса отправителей и постоянно модифицируя частоты передачи, они направят информационные бомбы в ключевые сегменты городской сети, целясь в узлы, контролирующие связь внутри города. Сеть будет перегружена в течение нескольких минут.
На вспомогательных мониторах, обычно транслирующих внешние каналы связи, возникли первые помехи, потом линии связи замигали красными уведомлениями критических сбоев.
В ту же секунду на экране ноутбука Андрея вспыхнула короткая строка кода, пришедшая по защищенному каналу. «ACCESS_OVERRIDE_UNIT_B3-7. AUTH: Z_14-ALPHA». Одноразовый код доступа. Полученный Виэном в день ареста пропуск на завтрашний день. Последняя фаза. Необходимо скорее попасть к ядру.
Донёсся едва слышный щелчок. Лазерные линии, ограничивающие внешний периметр, на мгновение дрогнули, и погасли.
Поочерёдно проскользнули внутрь через узкий технологический разрез. Внутри Цитадель воздух был сух и прохладен. Пол под ногами вибрировал — где-то внизу работали колоссальные турбины охлаждения. Тени от приглушённого света в холле острыми углами легли на гладкие поверхности стен, лишённые малейшего намека на человеческое присутствие. Группа бесшумно двигалась по полированному покрытию, но и сам звук дыхания оглушал их в тишине. Прогулка внутри гигантского кристалла, могущего в любую секунду сжать грани.
Андрей упал на колено возле первой же распределительной панели. Пальцы летали, вводя каскад команд, подготовленные в Глубине. На экране ноутбука побежали строки подтверждения. Он не пытался заблокировать двери — обманывал маршрутизацию, принуждая поверить в постановку нижних этажей Цитадели на плановое техобслуживание. Любой при попытке войти сюда будет заперт в бесконечном цикле авторизации. Логический тупик в работе узла безопасности. Для внешних систем этого коридора не существует.
— Сектор изолирован, — негромко отчитался он.
Команда не успела пройти и десятка шагов. Сверху раздалось низкое жужжание. Из пазов в стенах выскользнули автоматические турели, красные оптические сенсоры навели прицелы.
— Пригни голову! — крикнула Лина.
Пальцы уже вводили команды. Доступ Виэна открыл лазейку в гнилое подбрюшье здания — в служебную сеть, не менявшуюся со времен постройки.
Подключенный ноутбук получил доступ к управляющему модулю и он даже глазам не поверил, заморгал, увидев интерфейс. Вовсе не продвинутая программа защиты из будущего, а типовой контроллер, такие же ставили на промышленные объекты и в прошлом.
— Сидят в жутком страхе перед сложностями, — пробормотал себе под нос, — оставили все на уровне «вкл/выкл».
Запрос пароля. На секунду задумался, прикидывая варианты. Раз стёрли всё, включая подсказки и напоминания, то и пароль должен быть самым тупым из всех возможных. Чтобы самый последний техник-недоучка его запомнил. Ввёл команду, добавив к ней простейшую последовательность:
ssh root@turret-control.local -p 12345 'shutdown -h now'
Не сработало. А если 6 символов?
ssh root@turret-control.local -p 123456 'shutdown -h now'
Другой подбирать не потребовалось — «123456» сработал. Гении идеологии — паршивые сисадмины.
Турели, готовые выплюнуть смертоносный град, остановили ход. Красные сенсоры погасли. Сисадмин удовлетворённо осклабился. Прекрасно. Чужая лень — самое лучшее оружие.
Здание построили лабиринтом. Сотни метров коридоров, стены покрыты слоями кабелей, переплетённых клубком гигантских змей. За стеклянными панелями стояли ряды старых, но функциональных серверов, индикаторы мерцали тусклым, равнодушным светом. Воздух, пропитанный статическим электричеством, шевелил волосы.
На внутреннем посту встретилось четверо бойцов СВК. Вскинули винтовки, но Кай вышел вперёд, деактивировав боевой режим шлема и открыв лицо. Покрытое шрамами и царапинами, лицо в свете Цитадели выглядело более устрашающе, чем направленное оружие.
— Внимательно посмотрите на свои браслеты, — глухо произнес он. — Система обнулила ваши коды. Вы для неё — мусор, она агонизирует. Встанете у нас на пути — умрёте за компьютер, забывший ваши имена. Уходите, даже нет, убегайте сейчас, это даст вам шанс добежать до подземных шлюзов раньше, чем всё окончательно разрушится.
Стражники переглянулись, увидев фиолетовое мерцание идентификаторов. Ужас перед неизвестностью перевесил муштру — они не Хищники и противостоять обезумевшей толпе не имели ни малейшего желания. Опустив оружие и, не проронив ни слова, побежали к аварийному выходу.
Из-за угла вывернули два защитных робота — угловатые, четырехногие машины с массивными манипуляторами. Роботы издавали пронзительный электронный писк, сенсоры нацелили оптику на нарушителей.
Андрей попробовал подключиться к их сети, но экран высветил ошибку NETWORK UNREACHABLE
— Чёрт побери, они не включены в общую сеть! — крикнул он. — На изолированном контуре!
Ада открыла огонь, заряды отскакивали от толстой брони. Роботы приближались.
— Вон там! — сисадмин показал на стену. В небольшой нише, за тонкой решёткой, мигал индикаторами старый, пыльный коммутатор. — Контрольный блок! Вот дурачьё. Боятся удаленных взломов и оставляют физические рубильники! Огонь по щитку!
Одновременный залп по цели разнёс решётку в клочья, несколько зарядов попали в блок управления. Высыпал сноп искр, раздался короткий треск.
Роботы хаотично задёргали манипуляторами, затем безвольно опустили их под неправильными углами, с глухим стуком рухнули на пол, потеряв равновесие. Превращение в груду безжизненного металла произошло быстро, за считанные секунды.
Сисадмин провёл пальцем по шильдику производителя на искорёженном блоке управления. Узнал в стёртой надписи логотип корпорации, ставшей банкротом ещё в конце двадцатого века.
— Теперь я окончательно понял, — медленно произнёс он, обращаясь больше к себе, чем к другим. — Ваши инженеры ничего не создавали, а после своего великого Очищения вообще потеряли возможность производить по-настоящему сложные результаты. Вся эта бутафория — конструктор, собранный из обломков старого мира. Биоинженерия Хищников, дроны, даже Цитадель — технологии прошлого, которые поддерживают и латают, но не трогают алгоритмы, ведь не знают, как быть, если те перестанут работать. Бездарные инженеры.
Посмотрел на Лину.
— Представь защиту средневекового замка. Ты можешь поставить на стены лазерные турели, но стены всё равно будут каменными, с бойницами и подъемным мостом, работающим на цепях. А я знаю, где крепят эти цепи. Старая школа, — выдал кривую ухмылку. — Учите классику, молодёжь, новое чаще всего — хорошо забытое старое.
Двигались глубже. Стандартный пароль обезвреживал ловушку за ловушкой. Каждый шаг приближал их к цели пути. Наконец, достигли массивной, бронированной двери, за ней были лифты, ведущие на верхние уровни.
— Серверы не здесь, — мотнула головой Ада. — На верхних этажах. Для доступа к ним нужен высокоранговый пропуск.
— Значит, надо поискать, — Лина усмехнулась, крепко сжимая винтовку.
Андрей фиксировал каждую вспышку индикаторов на консоли.
— Чёрт! И надо поторопиться. Система начала реагировать. Нас она по-прежнему не видит угрозой, но заметила сбой оборудования. Считает турели сломанными и шлёт диагностические запросы. Сейчас наверняка кто-нибудь явится для проверки…
Приглушённый шум сервомоторов сообщил об открытии соседнего лифта. Через мгновение из-за поворота коридора вышел бледный от испуга сотрудник службы техконтроля с ящиком инструментов в руках. Видимо, получил приказ проверить ситуацию, столкнулся с полным бардаком на улицах и решил пройти верхом. На свою беду.
— Стоять! — крикнул Кай.
Техник обернулся на окрик. Расширил от шока глаза, когда увидел вооружённую группу прорыва, и среди них — двух Хищников в боевой броне.
— Вы! — просипел он, хотел закричать, но голос изломался от ужаса. — Предатели!
Это был Степан и он попал сюда не случайно. Увидев в терминале мониторинга использование знакомого кода доступа в Цитадели, сообразил — кроме Виэна, никто не мог бы использовать, и решил — это шанс для выслуживания. Лично приведя беглеца, он мог гарантировать снятие штрафа.
За побег Виэна он был наказан жестоко. Рейтинг рухнул сразу на две тысячи, отобрав право и на транспорт, и на паёк, и даже на отдельное проживание. Он был переведён из службы контроля Улья в обслуживание нижних блоков Цитадели. С ним постоянно ходили двое охранников из гвардии сектора, рослые парни в тяжелой броне, в любой момент могущие превратиться в палачей.
Вышли они из лифта с оружием наизготовку, но всё равно не успели ничего сделать. Секунда — и двое конвоиров рухнули с пробитыми шлемами, не успев нажать на спуск. Кай двигался с такой скоростью, что охранники увидели лишь смазанную тень, прежде чем перешли в статус кусков мяса. Техник не успел открыть рот для крика, как был схвачен за воротник и прижат к стене.
— Нам нужен доступ к верхним серверам, — глухо проговорил голос из-под шлема, глаза в прорези сверкнули ярче визора. — Или станешь частью этого пола.
Степан затрясся, как под напряжением, от лица отхлынула кровь, побледнел, чуть не теряя сознание от ужаса.
— Я не могу. Мой РБЛ…
— Нас не интересует твой РБЛ! Нас интересует доступ к лифтам! Веди!
Под дулами винтовок техник ввёл код на панели лифта. Лифт с шипением открыл двери.
— Внутрь! — скомандовал Андрей.
Лифт начал стремительный подъём.
— Вас обнаружат, — прохрипел Степан, съежившись в углу. — Система…
— Занята, переваривая мусор, — хмыкнул сисадмин, исследуя показатели траффика на ноутбуке. — Да и твой пропуск дал нам фору. Но поспешать надо… как бы демонтировать эту панель?
Бронированный кулак вырвал панель управления с корнями.
— Автоматика заблокирует вас через минуту! — прокричал техник. — Я имею право на подъем только до тридцатых этажей.
— Тут ты прав, — согласился сисадмин. — Но нам больше и не надо!
Кай рывком раздвинул люк в потолке кабины и в одно движение вылез на крышу. Андрей подключил ноутбук напрямую к обмотке электромагнитных тормозов.
— Отключаю питание! — прокричал он. — Сейчас лифт отключит подъем.
Хищник ухватил массивные тяговые тросы. Используя мощь экзоскелета, выдёргивал лифт вверх, обходя электронные ограничители скорости. Трос визжал в руках, прожигал перчатки, но кабина шла вверх, игнорируя команды на остановку. Взлом на самом физическом из уровней — подъём, вырванный силой мышц, игнорировал команды сломанной программной логики.
Лифт остановился, мягко щёлкнул замками, распахнул двери. Перед ними открылся широкий коридор. Верхние этажи Цитадели, обитель Ядра. Вылизанная чистота, порядок, который нарушал лишь едва слышный писк датчиков.
Путь в коридоре преградила одинокая фигура. Охранник сидел, скрестив ноги, при появлении группы плавно перетёк в стоячее положение. За его спиной замаячили ещё две фигуры, но взмах руки отослал их, указывая занять позицию, отрезающую проход к туннелям.
Лёгкой, невесомой походкой танцора двинулся навстречу.
Кай не стал ждать, пока противник дойдёт до них. Рванул вперёд, на ходу вырывая из настенного крепления массивный поручень. Соперник слегка сместил корпус, и импровизированная палица с гулом рассекла воздух в миллиметре от визора. Коридор засвистел активацией клинков. Веря в то, что лишённые связи импланты успеют просчитать траекторию атаки, Кай ударил первым, используя тараном всю массу экзоскелета. Оглушительный звон заполнил зал. Он мёртвой хваткой уцепил противника, в яростной борьбе сковывая движения.
Ему противостояли не обычные бойцы — высокие, в красивых тёмно-синих комбинезонах, с алыми визорами, горящими зловещим светом. С не просто быстрыми, но и очень плавными движениями, и необычным оружием — тонкими клинками прямо из запястий.
— Это ЭлитКонтроль, — глухо проговорила Ада напряженным голосом. — Мы совсем рядом.
Элитный боец был невероятно быстр, но всё же Кай успел перехватить первый удар. Рванулся навстречу, отбил удар клинка предплечьем, усиленным броней. Скрежет металла заполнил коридор. Двое других бойцов терпеливо ждали в конце коридора. Схватка превратилась в молниеносный перформанс. Клинки вспыхивали, полосуя на стенах глубокие борозды, удары наносил невероятно стремительно, перехватывались они с огромным трудом.
Кай сражался с невероятной яростью. Уклонял тело от ударов, наносил ответные, но удары врага были сильнее. Нырком обойдя, враг нанёс выпад апперкотом. Едва успел парировать. Лезвие клинка проехало по броне, высекая снопы искр. Потерял равновесие, удар сбил дыхание, и стало понятно — враг намного сильнее, прямыми атаками не одолеть. Встречный удар отшвырнул на метр, перекатился, зашиб голову о стену.
Успел вскочить в стойку, но серия ударов вновь сбила с ног, по лицу побежали тёплые ручейки, глаза заволокло темнотой.
Острия мелькнули вновь, в их блеске на голову опускалась верная гибель.
— Ты обещал! — выкрикнула Ада, её голос прорезал шум боя. — Обещал прийти назад!
Эти слова ударили выстрелом в сердце. В сознании замелькали лица детей, доверчивые глаза, их смех, тонкие ручки. Его данное обещание. Впервые за долгие годы боль от ломки, страх, поводки системы — всё полностью исчезло, растворилось перед чем-то много более значительным, чем даже он сам. Здесь больше не было раба сигнала. Отныне он сам по себе.
И пальцы его сами вновь сжались в кулаки.
— Да, я обещал им мир! — прорычал он, и в яростном рыке прозвучало отчаянное невысказанное желание. — И я сдержу слово!
И на этом крике он рванул измученное тело прямо на мелькающие лезвия.
Глава 30
Кай шёл в бой как античный герой. Тело, несмотря на ранения, двигалось с поразительной скоростью и силой. Клинки вспыхивали вокруг него, но он сражался, как никогда прежде. Отбивал удары, контратаковал, обманывал, нападал, и добился своего — смог создать брешь, куда проскользнули остальные.
— Бегите! — проревел, воспользовавшись секундой передышки между атаками. — Я прикрою!
Элитные бойцы двигались, полностью игнорируя законы гравитации. Мечи чертили в воздухе светящиеся дуги, сжигая воздух. Противник превосходил пределы возможностей, сервоприводы жалобно выли в состязании со скоростью врагов. Клинок полоснул по плечу, и воздух наполнил запах горелой синтетики и собственной плоти. Снова использовал массу поврежденной брони тараном. Не тратил времени на фехтование — крушил врага, используя щитами фрагменты декора и выломанные куски стен. Выигрывал драгоценные секунды, торгуя собственной кровью.
Клинок вознёсся для фатального удара, но Кай опять совершил немыслимое. Намеренно отключил систему стабилизации собственной брони и рухнул плашмя, пропуская лезвие над собой. В падении активировал экстренный сброс охладителя из повреждённого ударом ранца. Облако азота ослепило врагу сенсоры. Воспользовавшись секундной дезориентацией соперника, Кай прокрутился на земле, прыжком вырвался вверх, схватил противника за шлем, и с силой впечатал в лицевую щель электромагнитную гранату. Под ладонью затрещало, визор лопнул, парализованная машина убийства забилась в агонии, короткое замыкание вошло в непрерывный цикл.
Они рванули в другой коридор, а за их спинами гремел яростный бой. Ада вела прицельный огонь из винтовки, сдерживая наседающих элитников. Один из бойцов отряда прорыва прикрывал отступление, получил удар и рухнул, не издав ни звука. Пал второй, третий… Каждый метр стоил жертв.
— Бежим! — кричала Ада, и поливала коридоры шквальным огнём. Сисадмин бежал изо всех сил, ноутбук больно бил в бедро. Бойцы, на ходу перезаряжая винтовки, вели огонь, отсекая преследователей. От отряда оставалось всё меньше бойцов.
Вот и Лине пришлось отстать, чтобы принять последний бой.
Повезло — столкнулась не с элитниками, а с отрядом внутренней безопасности — обычными бойцами СВК, ослеплёнными сбоями шлемов. Свет в коридорах погас, и бойцы палили наугад, следуя звукам, чем только помогали обнаружить своё положение. Она ориентировалась гораздо лучше, как в хорошо знакомой стихии. Эти коридоры мало отличались от ставших ей родными катакомб. Перепады освещения и зеркальные поверхности помогали дезориентировать врага. Точные выстрелы винтовки не вели войну, устраняли препятствия. Встреченные — тени прошлого, и сегодня им предстоит быть окончательно стёртыми. В ней не было страха, лишь расчёт и горькое удовлетворение от каждого упавшего врага.
Последний взгляд, она исчезла за поворотом, загремели выстрелы, смешиваясь с шипением лазеров.
Андрей остался вдвоём с Хищницей.
— Вперёд! — крикнула она, подталкивая его в спину. — Мы почти у цели!
Распахнули дверь и вбежали в просторный, залитый синим светом зал. Серверная. Хищница пересекла невидимый порог, и тут же душераздирающе закричала, рухнув на пол. Тело изгибали судороги, броня искрила, а индикаторы на шлеме с сумасшедшей скоростью замигали красным, прежде чем погаснуть с последним жалким писком. В последний раз вздрогнула, ударилась об пол и затихла, потеряв сознание. Дыхание стало тяжёлым и прерывистым.
— Ада? — бросился к ней, но не успел дотронуться.
Из тени между серверами вышла одинокая фигура. Высокий, худощавый мужчина в белом комбинезоне спецодежды. На груди у него сиял вышитый золотом знак — 7892. С любопытством засмотрелся на корчи умирающей на полу.
— Видите? — голос звучал спокойно и мелодично. — Вы в святилище. Оно отвергает скверну. Ваши примитивные импланты, грязная связь с системой — мусор, который поле выжигает изнутри. Вы опоздали на столетие, — Мужчина обвел рукой сияющие колонны. — Мечтаете изменить Ядро? Серверы защищены не кодом. Мы создали непреодолимый барьер — суперпозиционную петлю, она выводит железо из-под действия энтропии. Даже если вы взорвете здесь всё, реальность внутри поля будет возвращена в исходное состояние. Мы запечатали Протокол Очищения во времени. Каждая попытка изменения, каждое ваше слово будет стёрто и забыто, поле просто совершит очередной цикл. Вы боретесь с вечностью, дикари, а вечность нельзя перепрограммировать или взломать с помощью ноутбука. Вы бесплодны перед силой нашего разума. Примите неизбежное.
Андрей зарычал от бешенства. Перед ним на полу корчилось умирающее доказательство произнесённых слов.
— Кто ты… — прошипел он.
— Я Хранитель, — ответил мужчина. — Я служу Порядку. Тому самому, спасшему человечество от войн и голода. Породившему для вас Заговор, который вы считаете орудием ада, не понимая великой цели. Заговор — не сговор жалких интриганов, а священный завет между разумом и его слугами. Наши предки, первые Хранители, давно поняли — мир может утонуть в крови. Величайшие умы — врачи, могущие победить любую болезнь, кроме одной — человеческой природы. И создали Заговор. Каждый из вас при рождении заключает договор. Вы отдаете нам свою разрушительную свободу воли, а мы даруем вам жизнь. Каждая проверка в будке -подтверждение вашей верности. А те, чей Заговор истекает, — вероотступники, нарушители договора. Ядро не наказывает их, а приводит в исполнение условия нашего общего спасения.
— И такое вы называете спасением? — ярость заставила голос срываться.
Хранитель высокомерно и цинично осклабился.
— Вы — дикари, и видите клетку. А я вижу единственную конструкцию, удерживающую зверя внутри вас от пожирания всего вокруг. Вы оплакиваете знания? Ваша открытая информация уже чуть не привела мир к гибели. Мы нашли это поле и подготовили для него мир. Мы не отнимаем у вас чувства, дикари. Мы требуем от вас предсказуемости. Нам не важны ваши смех или слёзы. Нам важна ровная линия на наших мониторах. Любой всплеск может привести к непослушанию. А непослушание — болезнь, искоренённая нами. Навсегда. Мы проверяем вас в будках не в наказание, а для калибровки этой самой предсказуемости.
Он подшагнул ближе, глаза засияли безумным фанатичным огнём.
— Мы запустили Протокол Изоляции. Очистили человечество от скверны вопросов, от чумы сомнений. Мы вырвали страницы вашей кровавой истории, стерли языки программирования, порождавшие непредсказуемость и соперничество. Мы подарили вам спокойствие. Даровали порядок, повсеместно. Ваш прогресс — вирус, сложность, ведущая к самоуничтожению. Мы оставили вам подлежащее контролю. Простое и надёжное, контролируемое. Наши дроны и Хищники — не достижения технологии, а скальпели — острые и опасные инструменты, необходимые хирургу, чтобы вырезать ещё более опасные опухоли. Мы не создавали бога. Мы создавали операционную. И поле, — обвёл рукой пространство за своей спиной, — стало гарантией установки вечного порядка. И ни один вирус новой мысли никогда не заразит нас вновь. Вы не чините мир, а хотите вернуть ему самую страшную болезнь. Вы посягаете на незыблемое, на сам фундамент Порядка. Но вашим примитивным законам энтропии и распада не подчинить Ядро. Оно вечное и неизменное. Любая ваша попытка изменения — рябь на поверхности воды.
Дверь снова с грохотом распахнулась. В проеме стояла Лина. Израненная, вся в копоти. Тяжело тяжело, держа в руке опущенную вниз винтовку. Взгляд пробежал по залу, выхватил лежащую Аду, стоящего рядом на коленях Андрея, застыл на Хранителе.
Ей перехватило дыхание. Усталость исчезла с лица, сменившись маской раскаленной добела ненависти. Вены на висках вздулись.
— Ты! — слово заполыхало ядом.
Хранитель повернул голову. Несколько секунд непонимающе смотрел на Лину, потом на лице промелькнуло узнавание, затем — лёгкое раздражение.
— А, беглянка. Предпочла грязь катакомб комфорту и моему покровительству. Вот так встреча.
Она узнала сразу. Тот самый чиновник. Тот, кто убил мужа. Тот, кто хотел купить её вещью. Вся жизнь, боль, борьба — всё взяло начало от этого человека, стоявшего сейчас перед ней. Вскинула винтовку, нажала на спуск. Ещё и ещё раз. Винтовка не реагировала.
— Ты не понимаешь, дикарь, — Хранитель снова повернул корпус, полностью игнорируя Лину, щёлкающую затвором. — Поле вечно. Оно неизменно. И делает невозможным воздействие оружием. Любая попытка изменить сервера обречена. Они…
Он не договорил. Пропел тонкий свист, и в горле Хранителя вырос серебряный нож. Хранитель упал на колено, расширил недоумённые глаза. Медленно повернул голову в сторону Лины. Та стояла с пустой протянутой рукой, грудь тяжело вздымалась.
— За…всё, — выдохнула в крик.
Хранитель захрипел, изо рта пошла кровь. Рухнул на колени, не отводя стекленеющих глаз от мерцания вокруг серверов.
— Глупцы… поле… всё вернёт…
Сила жизни в глазах медленно угасала.
— Дикари! Защита… серверов… непреодолима… — прохрипел он.
Тело обмякло и рухнуло на пол.
Они остались одни. В тишине, которую нарушало лишь еле слышное дыхание умирающей Ады.
Убийца смотрела на тело Хранителя, на нож, все ещё торчащий из горла. Ждала триумфа и облегчения, сколько она мечтала это сделать? Но внутри осталась всё та же выжженная пустота. Месть оказалась не интереснее прогоревшего пепла. Метнула взгляд на умирающую Аду, на дверь в коридор, где покоились тела павших товарищей. Потом вдруг осознала — личная война — за мёртвых, окончена. Но война за живых в самом начале. Подошла к сисадмину, отчаянно и безуспешно пытавшемуся привести Хищницу в чувство.
— Хватит, — твердо остановила реанимацию, положила руку ему на плечо. — Ты попробовал все возможные способы. Ей не поможешь. Наша задача в помощи тем, кто ещё жив. Я ничего не изменила. Но, может быть, мы сумеем справиться вместе.
Андрей поднялся с колен, и последовал за Линой в огромный зал, подсвеченный синеватым сиянием мониторов.
Святилище построили с размахом. Пол в зале — из прозрачного сверхпрочного стекла, под ним в глубину расходились сотни вспыхивающих оптоволоконных нитей. В центре высились монолиты серверов — матовые чёрные кубы, лишенные швов и кнопок. Вокруг них колыхалось марево активного охлаждения, создавало эффект зыбкости пространства. Воздух остыл, как в морозилке, каждое слово выходило облачком пара. Плотность воздуха дошла до физической, тишину нарушал лишь едва уловимый шорох считываемых с дисков данных.
В самом центре, окруженные странной, мерцающей средой, стояли ряды серверов. Массивные, но совершенно новые, как вчера с конвейера. Индикаторы горели ровным, ярким светом. Никто их не охранял. Ни роботов, ни Хищников. Система была настолько уверена в собственной неприкосновенности, что не имела даже простейшей физической защиты.
Сисадмин достал флешку с патчем, приблизился вплотную к одному из серверов. Нащупал пальцем свободный порт. И вспомнил свою последнюю чашку чая на кухне в Тушино, ведь он не убрал чашку в раковину. А ещё как наяву услышал мамин голос, и шебет птиц в последнее солнечное утро 2016-го. Вся его прошлая жизнь растаяла пылью, и именно эта проклятая железяка создала ад в его будущем. Крепко сжал корпус накопителя, дал себе прочувствовать закипающую внутри ярость.
— Я удаляю тебя из истории, цифровая мразь. Конец связи, — выговорил и с силой, кинжалом в сердце тирана, вогнал флешку в разъём. Не запуск скрипта — возврат долга за сто лет рабства.
На экране дисплея вспыхнули строки кода. Патч принят.
— Сработало? — взволнованно спросила Лина.
Он ждал. Ничего не происходило. Индикаторы продолжали гореть ровным светом. Ничего не изменилось. Проверил ещё раз. Все параметры остались прежними.
— Вроде бы да, — пробормотал, но в голосе звучала неуверенность. — Но…
Он вытащил флешку и снова вставил её. Патч снова был принят. И снова — нет эффекта. Серверы были неизменны. Пот выступил на лбу.
— Невозможно, — выдохнул он, глаза бегали по мерцающей среде, окружающей серверы. — Что за чёртова защита?
Вернулся терминалу, встроенному в один из серверов. Пальцы застучали по клавиатуре, выполняя перезапуск.
REBOOT_SYSTEM: CORE_SERVER_01. AUTH: OVERRIDE_A-38-OMEGA
Экран послушно отозвался строкой REBOOT_INITIATED
Но индикаторы не мигнули. Сервер продолжал работать. Ничего не произошло.
— Они не уходят в перезапуск, — отчаянно вскричал сисадмин. — Не принимают команд!
Надо попробовать стереть корневые файлы.
«RM -RF /ROOT/*. AUTH: OVERRIDE_A-38-OMEGA».
На экране всплыл отзыв: «OPERATION_FAILED: FILE_SYSTEM_IMMUTABLE».
— Неизменяемая файловая система? — он не мог поверить глазам. — Но… такого не бывает!
Перешёл к более агрессивным методам, вызвал низкоуровневое форматирование. Одну за другой вводил системные команды для уничтожения сервера. Нулевой эффект. Серверы не реагировали, синие индикаторы горели ровно и безмятежно. Попробовал стереть файлы, отвечавшие за саму работу ОС, но тоже безрезультатно. Консоль отвечала с навязчивой, издевательской монотонностью: «OPERATION_FAILED».
Лина подошла ближе.
— А если надо не через клавиатуру? — произнесла это спокойно, даже равнодушно. Лезвие блеснуло в синеватом свете — успела вытащить нож из горла убитого и насухо обтереть о штанину. — Тот урод кричал — защита непреодолима. Но он имел в виду защиту только для данных, так? А если разбить сами железки? Как твой телефон.
Пожал плечами. Взял протянутый нож. Посмотрел на сервер. Собрав все силы, нанес удар. Лезвие вошло в небольшой паз между панелями, в расположение основных портов. Зазвучал резкий свист, яркая вспышка — и нож отлетел в сторону, ударив в стену. Отдёрнул онемевшую руку. Сервера не срегировали.
В ярости начал бить сервера ногами. Глухие удары сотрясали металл. Вспыхивали искры. Но на поверхности серверов не возникло ни вмятин, ни царапин. Сервера по-прежнему выглядели нетронутыми, работая с равнодушным спокойствием.
Тяжело дыша, снова вернулся к терминалу.
В полном отчаянии, когда не сработали ни взлом, ни грубая сила, набрал команду, которую вызывает администратор, столкнувшись с необъяснимым — базовую диагностику. Просто увидеть, есть ли отклик проклятой машины.
# uptime
09:01:23 up 1 min 23 sec, 1 user, load average: 0.00, 0.00, 0.00
Брови соединились друг с другом в недоумённой гримасе. Всего одна минута работы? Как такое вообще возможно? Снова ввёл запрос, с уточнением.
# uptime -p
Экран высветил строку:
# up 1 minute 23 seconds
Идентичный результат. Ввёл команду в третий, в четвёртый раз. Цифры прежние. Секунды не тикали. Период работы сервера заморожен в одной точке.
Какая ерунда. Так не бывает.
Он ввел:
# date
Сервер тут же отозвался:
# Mon Sep 12 09:01:23 UTC 2070
Андрей окаменел. Понимание окатило холодным душем, пронзило насквозь до костей. Неизменяемая файловая система… 2070ый год. Физическая неуязвимость… И время работы, вмерзшее мухой в янтаре. Так работает не защита.
Присмотрелся к мерцанию повнимательнее. Защита — но не купол или стена. Поле стазиса облегало каждый серверный шкаф второй кожей, в точности повторяя каждый изгиб металла, каждую заклепку и порт. Странная, мерцающая среда.
Молния сверкнула в мозгу. Это — не защитное поле. Данные не перезаписываются. Перед ним нечто гораздо более невозможное. Постоянно работающая машина времени, которая непрерывно возвращает сервера из прошлого.
Перед ним стоял физический слепок. Ни один объект не мог проникнуть внутрь. Эти сервера вообще не существовали материальными телами — это физические призраки, реликтовое излучение материи, запертой в 2070 году. Поэтому эти сервера ничего не потребляют и не отдают. Всё оборудование — от процессоров до кабелей — черпает энергию из электростанций прошлого, ещё работавших в тот миг. Бить по ним — разбивать кулаком изображение на экране: тепло монитора чувствуешь, но не можешь тронуть актёров. Все попытки воздействия ограничивает вовсе не физическое сопротивление металла. Сам процесс восстановления серверов не предусматривает допуска чужеродной материи к застывшему во времени миру.
Патч невозможно использовать. Любая попытка изменить их, любой вирус, любое физическое воздействие — тут же будут заменены исходной, неповреждённой версией из прошлого. И восстановится не виртуальный образ, а сами сервера. Физически.
Их победа невозможна. Для уничтожения Ядра надо дать патчу сработать. Для его работы нужно разрушить поле защиты. Но как разрушить машину, которая постоянно восстанавливает себя из момента, когда она работоспособна? Такое логически невозможно. Они попались в ловушку.
Часть 6 – Выше звезд. Глава 31
Кай пришёл в себя. Мир вокруг размылся пятнами боли и грохочущего в ушах звона. Каждая мышца горела огнем, каждый нерв пульсировал от невыносимой агонии. Броня покорёжена, оплавленные пластины вошли в плоть, шлем треснул, визор мигал, показывая целый перечень критических повреждений.
Три элитных Хищника лежали вповалку — один с раздробленным шлемом, другой с пробитой грудной пластиной, третий — искорёжен до неузнаваемости. Четвертый пробовал отползти, но движение прервал последний удар Кая, раздробивший череп. Он победил. Выстоял. И сдержал обещание, данное Андрею и Аде — прикрыл, дал им пройти.
Бой выигран не просто непросто. Произошедшая схватка была настоящим фейерверком воинского искусства, и гордиться нужно не силой, а сложностью принятых решений — из тысяч вариантов выбраны микродвижения, оказавшиеся непредсказуемыми даже для супервоинов, заточенных на причинение вреда. Перед глазами ещё мелькали клинки и взрывы, память возвращала ощущения схватки. Тело вело битву, перехватывая инициативу, он перестал смотреть и вошёл в горячечный дым боя, когда видел сразу всё и со всех сторон, и прошлые атаки, и настоящие, и даже будущие. Всё сильнее росло изумление в глазах соперников, и перерождалось в ужас, когда ощутили его превосходство.
Он не просто сильнее. Умнее, энергичнее, мотивированней. А ещё более умелый, ловкий, опытный. Да, и ещё — сильнее.
Но теперь ему плевать на битву и на победу. Сквозь мутную пелену боли, живущей сразу во всем теле, сквозь нарастающий шок тела, доминировал настойчивый, отчаянно слабый сигнал коммуникатора Ады. Искажённый помехами поля, прерывистый, но безошибочно узнаваемый. Еле уловимый, неразличимый для обычного человека, но не для Хищника, связанного с ней невидимыми нитями. Сигнал сиял ярче солнца, зовущей звездой во всепоглощающей тьме.
Кай застонал при попытке пошевелиться. Вселенная вернула мозговой взрыв, сознание померкло при попытке встать на ноги. Видимо, задеты ключевые нервные окончания.
Рывок не помог, тело — выверенный инструмент войны, предало хозяина. Вместо привычного отклика сервоприводов и выброса нейростимуляторов ощутил вязкий холод паралича. Поврежденный позвоночный интерфейс выдал каскад ошибок прямо в зрительный нерв. Реальность полыхнула ослепительно белым светом, а затем схлопнула мир в узкую точку. В ушах нарастал гул, похожий на шум работающей турбины, перекрывая стук собственного сердца. Не почувствовал удара об пол, когда голова упала назад. Сознание выключилось, не выдержав перегрузки болевых рецепторов. Последним исчез послеобраз алого мигающего датчика, сигнализирующего — где-то за пределами забытья она медленно умирает в муках.
Ему явился Инкубатор — ярко освещённые коридоры сектора «Генетических нулей». Ему пять, вечно голодный и тихий, в страхе даже от теней патрульных ботов. А девчонка была чуть выше ростом и уже тогда смотрела на мир взглядом без страха. Когда старшие воспитанники отбирали его порцию белковой каши, девочка не звала воспитателей. Молча вставала впереди, сжимая маленькие кулачки, и в глазах закипала сталь, позже давшая ей прозвище «Ада, бешеная из ада». А потом делила с ним собственный паёк, укрывала колючим одеялом и шептала про его особенность. Единственная в мире, где их считали биологическим материалом, наделила существование смыслом и стала щитом раньше, чем стало понятно, от кого надо защищаться.
Тьма отступила, прорезалась резкой вспышкой памяти. памяти. Перед внутренним взором всплыла не битва и не испытания, взгляд — тот, прошлый. На выпускных испытаниях в Академии, когда они впервые посмотрели друг на друга по-настоящему. Взгляд без программированной лояльности, решительный и бесстрашный, и совершенно равнодушный к последствиям. «Поспеши!», — прозвучал призрачный зов в развороченном шлеме. Воспоминание сработало лучше адреналинового инъектора. Захлебнулся вдохом. Сознание возвращалось рывками, пробивало себе дорогу сквозь нейронный шум. Заставил себя сфокусировать взгляд на грязных плитах пола. Боль не утихала, и хорошо — послужит топливом для движений и не даст отключиться. Маяк по-прежнему звал. Она там и ждёт. У него нет права оставить её без помощи.
Встать невозможно, каждый мускул дал отдельный отказ в подчинении. Он пополз. Каждый миллиметр давался с невероятным трудом, острые края обломков рвали плоть, на истерзанном теле возникали новые раны. Он полз, ориентируясь на слабый сигнал, на единственную нить связи с целью. Броня, бывшее невесомое продолжение тела, нависло на плечах грудой мёртвого железа. Сервоприводы заклинило, гидравлика вытекала, крася пол в ядовито-розовый цвет. Он полз через территорию и следы недавней бойни были отражены на каждом куске искорёженного металла.
Прополз тело молодого бойца, узнал — тот всегда первым отвечал на тренировках. Тело лежало, привалившись к стене, а в руках, даже после смерти, зажат пустой автомат, направленный в сторону врага. Два отверстия в шлеме говорили о точности удара. Чуть дальше лежала женщина, её часто упрекали за излишнюю импульсивность. Сейчас её винтовка была разбита, вокруг разбросаны отсеки с пустыми энергоячейками, но и броня одного из элитных бойцов, неподвижно лежавшего на полу, практически сожжена. Не напрасно. Бойцы продали жизни задорого. Создали брешь, купили время.
Зал выглядел нутром развороченного механизма. Потолочные турели замерли на перебитых жилах кабелей, разорванные блоки питания до сих пор выплескивали в воздух едкий дым и каскады рыжих искр. Некогда идеально гладкие стены скалились отовсюду глубокими пробоинами и прожогами. Путь, которым прошли бойцы, читался без всяких карт: дорожки из стреляных гильз, обломки брони Стражей, тёмные пятна крови на композитных плитах. Защитники Глубины прорубили коридор и вырвали у Цитадели каждый его метр ценой собственных жизней.
Волочилась скукоженная нога. Оплавленный металл экзоскелета со скрежетом пахал пол, глубоко бороздя полированную поверхность. Каждый рывок отзывался в позвоночнике электрическим ударом — поврежденный интерфейс брони пытался перехватить управление у мышц, но Кай лишь сильнее стискивал зубы. Перестал доверять визору. Мир сузился до пульсирующей точки, которую он ощущал костями черепа.
Он слышал Аду вопреки всем блокировкам. Их импланты, ещё в Инкубаторе объединённые в закрытый протокол «Сцепка», сохраняли прямой канал связи на сверхкоротких дистанциях. Этот режим не требовал авторизации Ядра, не зависел от внешних серверов — направленный радиосигнал, добровольно установленный между двумя частями объединённой боевой единицы. Перед глазами мелькали цифровые каскады, пакеты данных рассыпались шумом, и только радиосигнал вёл точнее навигатора. Она умирала в десятках метров, и её боль и уходящая жизнь резонировала его собственными нервами. Он не мог не ползти дальше.
Через бесконечность добрался до входа в серверную, где нашёл её. Увидел неподвижное тело, распростертое на полу за порогом. Глаза полуприкрыты, дыхание едва слышно.
— Кай… не входи! — произнесла она слабым голосом с отчаянной и надрывной мольбой. С трудом пошевелила рукой в жесте остановки.
Он уже был слишком близко. Да и всё равно не послушал бы. Слова утонули в звоне взрыва боли, когда изуродованное тело пересекло невидимую границу силового поля. Миллионы раскаленных иголок пронзили каждую клетку, каждый нерв. Импланты, усиленные годами службы Системе, взорвали нервы невиданной болью, отторгая чуждое поле. Закричал, звук застрял в горле, перешёл в хрип. Сжал челюсти, преодолевая боль, но та поглощала, выжигала изнутри, лишала последних сил и остатков воли. Поле не просто отключало оружие, оно медленно убивало попавшего в его действие Хищника. И она подверглась воздействию поля много раньше него. У неё нет шансов.
Зацепив за край блок ручной лебёдки, заполз внутрь, агонией преодолевая каждый сантиметр пути. В корчах боли дотянулся до неподвижного тела. Дыхание еле слышно, глаза закрыты. С огромным усилием он приподнял тело и обнял, прижимая к себе. Дёрнул за трос, лебёдка заскрипела, выволакивая измочаленные тела из убийственного поля.
Когда лебёдка выволокла тела и убийственное жжение в нервах сменила тупая, изнуряющая ломота, силы окончательно его покинули. Кай почувствовал, как пальцы, судорожно сжимавшие плечи Ады, слабеют. Хотел позвать, но лёгкие наполнил жидкий свинец. Тихий щелчок в шлеме возвестил о критическом падении артериального давления. Перед глазами поплыли тяжёлые сизые круги, поглощающие свет серверной. Гравитация невыносимо утягивала в глубокую, бездонную воронку. Упал щекой на разбитый наплечник, и тьма снова накрыла, мягко и неотвратимо, погрузила в лихорадочный бред, а тени из прошлого опять сплели неразрывные узлы из своих картин.
Это был год, когда им стёрли имена, заменив на индексы, вытатуированные на внутренней стороне запястья. Сектор геннулей с вечным запахом хлорки остался в прошлом. Настало время тренировки психики — самой мучительной части подготовки. Мир сузили до размеров бетонной ячейки три на три метра, с вечным тускло-серым светом. Два раза в сутки открывали люк в стене, выдавая две порции безвкусного серого клейстера. Когда, ослабев от постоянного недосыпа и гула проверочных частот, мальчик начинал биться головой о стену, она садилась рядом и зажимала ему уши ладонями. Учила считать искры: концентрируя внимание на микроскопических вспышках статики на проводах под потолком - — её индивидуальный способ удержаться от схождения с ума оказался рабочим, и его впоследствии приняли как наилучшую практику. И это было не проявлением нежности, бешеная из ада никогда не проявляла подобных эмоций, но по несгибаемо принятому решению: необходимый выжить двоим в обстановке, где по регламенту должен уцелеть лишь один.
Затем их готовили к интеграции с экзоскелетами, изнуряя многочасовыми заплывами в охладительных резервуарах. И антураж их взросления проходил в ржавых тюбингах, капающей маслянистой жиже и в череде нудных команд, транслируемых через динамики в стенах. Однажды во время ремонта вентиляции они нашли лазейку в «Слепую зону» — технический зазор между жилыми палубами. Случайно остался без присмотра камер, кругом кабели и клочья пыли. С тех пор часто прятались там. Не для разговоров о чувствах — этого они не умели. Обсуждали уязвимости патрульных дронов и личные недостатки наставников, тренировались — зона была просто создана для бесшумного перемещения по рифлёному металлу. Повторяли схемы шлюзов, учась видеть их с закрытыми глазами. Почему-то она знала даже тогда: детство — краткий период, нужно успеть сохранить их связь и превратить во взаимный контроль, стать друг для друга важнее директив Ядра.
И тут же выплыло другое воспоминание: им по четырнадцать — возраст, когда в Инкубаторе отправляли воспитанников в жёсткие полевые выходы. Он уже перерос других на полголовы, раздался в плечах, а в движениях появилась отточенная грация. Лучший в рукопашном бою, рядом с ней робел, не зная, куда деть огромные руки. В неудачный вечер на них напали пятеро из старшего набора — хотели наказать за дерзость. И он не просто отбил атаку, яростным берсерком защитил территорию, где она стояла. Он знал, наблюдатель оценивает инциденты и за драку в общем коридоре ему грозит суровое наказание, но её безопасность была важнее любых последствий. Потом смотрел на неё, тяжело дыша, с разбитыми костяшками, и в упрямом взгляде горела клятва: если придётся, станет самым страшным зверем в мире, но никто и никогда не тронет её даже пальцем.
Зал распределения сиял холодным неоном. Ада стояла на трибуне — лучшая выпускница корпуса, обладательница права на выбор любого подразделения и команды. Инструкторы предлагали ей в напарники элитных бойцов из высших секторов, с гарантированным статусом от пяти тысяч, с доступом к спецпайкам и к чистому небу. Но она даже не взглянула на списки. Глаза искали в строю фигуру Кая, стоявшего в самом конце, со шрамом через всю щеку и угрюмым взглядом. Когда она произнесла номер, по залу прошёл гул недоумения. Куратор переспросил, указывая на неоптимальность сочетания. Она окатила его презрением, подняла подбородок выше и твёрдо повторила номер. Тогда он впервые ощутил в себе рождение силы гораздо более мощной, чем любая, которую могли дать импланты. Он был выбран ей не за качества солдата (он вовсе не был лучшим), а по окончательному признанию их обоих единой искалеченной душой, разделенной на два тела.
Судорожно прижал её к груди, игнорируя скрежет изломанной брони. «Дыши! Слышишь? Дыши, это приказ!» — хрипел он, срывая дрожащими пальцами перчатки — почувствовать тепло кожи и нащупать биение пульса на шее. Растирал остывающие ладони, отчаянно вливал криками ей в сознание последние остатки своих сил. Целовал веки, покрытые копотью, и выжал все стимуляторы до капли. «Ты не можешь уйти. Мы же почти у цели!» Обнимал изо всех сил, в попытке физической силой удержать ускользающую жизнь, ловил каждый вздох и удар сердца, был готов на всё, что угодно, лишь бы увидеть трепет поднимающихся ресниц.
И Ада открыла глаза. В них, несмотря на боль и близкую смерть, светилась нежность, такая глубокая, подобной которой он никогда не видел.
— Кай… — прошептала едва слышным голосом, не громче шелеста осенних листьев. — Я… я так сильно тебя люблю… Знаешь… я поняла это, когда увидела тебя играющим с детьми… Их взгляды на тебя… С такой надеждой. Я жалею об одном… не увидела тебя играющего с нашим… ребенком. Он был бы так похож на тебя…
Слова разрывали душу. Он крепко обнял любимую, впитывая последние мгновения, последние слова. Мысль о ребёнке, общем будущем, которое никогда для них не наступит, полосовало сердце штык-ножом.
— Ты… ты всегда держишь слово, мой Хищник, — продолжила она, собирая последние силы, рука едва заметно скользнула по его щеке. — Ты должен… вернуться к ним. К детям. Найди себе… новую Аду. И живи… счастливо… рядом с ней… ты обещал
Тело задрожало. Вздох. Обмякла в его объятиях. Глаза потухли, застыв в пустоте, отражавшей синеватый свет серверной. Она умерла.
Три года назад они сидели, свесив ноги, на краю огромной вытяжной шахты на техническом ярусе Цитадели — единственном месте, где никогда не ставили контрольных блоков. Вокруг гудели напряжением кабели, вентиляторы медленно поворачивали над головами колоссальные лопасти, нарезали на ровные сегменты тусклый свет аварийных ламп. Именно тогда он впервые осознал и произнёс слова, которые стали его главным кредо, религией, если бы он был знаком с таким понятием. Он глядел на чёткий профиль Ады, на её тонкие пальцы, сжимающие край бетонной плиты, и понимал, что ему не жить спокойно, пока не найдёт способа выйти вместе с ней на свободу.
— Знаешь, — тихо произнёс он, не отрывая взгляда от пропасти под ногами, — придёт день, и мы увидим небо без этих уродских фильтров. Настоящее синее небо.
Ада скептически прищурила глаза, поправляя воротник безупречно сидящей формы.
— И как же? Ты станешь чиновником? А если я тебя не отпущу? Или не захочу с тобой пойти? Например, буду сильно ценить дополнительный паёк? — лёгкое кокетство не могло скрыть тоску.
Кай резко повернул к ней голову, и она увидела неукротимую силу, нередко пугавшую инструкторов.
— Я сделаю это. И если для этого будет надо проломить купол и сжечь Глобал-Протокол до основания — сделаю и это. С твоим разрешением или без него, — он секунду помолчал, а затем продолжил почти шёпотом. — Но я не уйду один. Мы должны уйти вместе. Мне всё равно — в новый мир или в пустоту, но вдвоём. Ты знаешь, я держу слово. И я обещаю — мы будем вместе, вдвоём.
Он пустым взором смотрел на безжизненное тело, по-прежнему изо всех сил прижимая к себе. Всё ещё держал за плечи, но это была лишь пустая оболочка из полимера и костей. Боль от силового поля исчезла, уступив место нестерпимой, всеобъемлющей душевной агонии. Дети. Обещание вернуться. Но разве он мог? Как жить, зная — её нет? Если та, с кем мечтал о будущем, ушла? Без неё мир — пустая локация без координат.
Осторожно опустил её голову на бетон. Ладонь попала на винтовку — та лежала рядом, выскользнув из ослабевших рук. Тяжёлый металл холодил пальцы. Оружие больше не пищало о блокировке. Затвор лязгнул, оружие готово к использованию.
— Первое обещание, данное тебе… — глухо проговорил он, голос сломался, рассыпался на тысячи гаснущих осколков. — Было быть вместе.
Он поднес к голове ствол винтовки, от него пахнуло копотью. Секунда. Окружающий мир замер фотонегативом. Яркая вспышка.
И Кай беззвучно рухнул рядом с Адой, выполнив своё первое обещание.
Глава 32
Андрей придвинул лицо вплотную к терминалу, как заворожённый, изучал экран, насмешливо крутивший строку «OPERATION_FAILED: FILE_SYSTEM_IMMUTABLE». Их миссия, жертвы — тщетны. Слова Хранителя, смерть Хищницы, отсутствие толпы охраны — всё сплело единую и мучительную картину.
Он лихорадочно вводил строки инициализации патча, но система реагировала на них как живой испуганный организм. По боковой панели терминала в реальном времени бежал лог синхронизации: «ВНИМАНИЕ: ОБНАРУЖЕНО ОТКЛОНЕНИЕ ТЕКУЩЕГО СОСТОЯНИЯ. ОТКАТ ЧЕРЕЗ 4… 3… » Стоило прописать новый конфиг и нажать «Save», и курсор тут же замирал, и файл на глазах пустел, возвращая себя к исходному состоянию. Как рисовал на песке во время прилива, волны отката слизывали все изменения. Файлы не просто защищались — отрицалась даже сама возможность их изменений. Попробовал скопировать в оперативную память до запуска цикла отката скрипт-паразит, тоже безуспешно — ядро срабатывало на опережение. Через несколько секунд звучал мягкий щелчок в недрах стойки, экран на миллисекунду тускнел, и компьютер сбрасывал соединения по всем портам. Заперт и не в силах пройти сквозь барьер, где для изменений в сервере архитектурой не предусмотрено иное время, кроме пятисекундной петли.
— Ну же, дай мне хоть одну щель! — прорычал сисадмин, запуская низкоуровневый поиск по дампу системных журналов.
# grep -r «CRITICAL» /var/log/sys.
История была невероятно чиста. Ни единого сбоя за все годы работы. Порядок, возможный только в условиях полной стагнации оборудования. Расширил область поиска до скрытых разделов загрузочного сектора, игнорируемых автоматикой отката. Экран выдал единственную строку:
[FATAL_LOG_FOUND]: /sys/kernel/stasis/err-01.
Наконец-то, хоть один сбой в ней всё-таки был, то есть существует способ пробиться сквозь её безупречность. Пальцы тряслись — дважды ошибался при наборе трёхсимвольной команды открытия редактора. Файл содержал единственную запись, но зато у неё была настолько знакомая временная метка, что сисадмина затрясло, как провод под чрезмерным напряжением.
# TIMESTAMP: 1471250477Z. ID: 0×7B2016A15 EVENT: ANOMALY_ANCHOR_SET. STATUS: PENDING.
Вбил для проверки:
# date -d @1471250477 -u
Ответ гласил:
#: Mon Aug 15 08:41:17 UTC 2016@15.08.2016T08:41:17.
15 августа 2016 года. Метка стояла именно на ту секунду, когда он коснулся призмы в московском переулке.
Теперь узнал и строку символов в идентификаторе. В последние недели смотрел на подобные записи неотрывно.
— Это же я… — еле слышно выдохнул он, когда узнал код биометрии.
И понял: ему вовсе не выпала роль взломщика. Он, Андрей Кварцев, и породил единственный глюк всей этой системы. В момент создания система столкнулась с фатальным повреждением. Сборка нашла образец данных с несуществующей биосигнатурой и запросила авторизацию. Но пакет с подписью не вернулся обратно, ведь сигнатуры не существовало. Запись зависла в таблице со статусом Pending — «Ожидание выполнения», а процесс оставил транзакцию невыполненной, не в силах ни завершить её, ни отменить. Почти пятьдесят лет сервера Цитадели работали в режиме ожидания ответа, который должен прийти из московского переулка далёкого прошлого. Он — аргумент в команде, полвека ждавшей возвращения биометрического импульса для завершения своей работу.
#: cat /proc/ioports | grep PID 0001
— Это не ошибка данных, — он вглядывался в вывод таблицы прерываний. — Это I/O Wait. Ядро сто лет висит в состоянии непрерываемого сна, пытаясь достучаться до устройства, которого нет в спецификации железа.
Нужная строка нашлась в самом конце списка. По адресу 0x0000A2016 значилось лаконичное: DEV_PRM_BRIDGE. Процесс PID0001 не может завершить инициализацию системы, пока этот мост не отдаст данные. Савельев не изобретал стазис-поле; он просто обнаружил физический побочный эффект транзакции, которая никак не может завершиться, и заземлил сервера на эту аномалию. Машина времени была не прибором, а аппаратным сбоем, который Савельев зациклил для создания бэкапа.
Файл err-01 — единственный объект, не залечиваемый откатом. Строка в логе — якорь, Система при инициализации подавилась куском кода и так и не смогла его переварить, оставив запись о происшедшем парадоксе в самом сердце загрузчика.
Он лихорадочно рассуждал.
Для обрушения нужно ударить сразу по всем узлам обработки — DNS, авторизации, управлению Хищниками. Но в Цитадели расположен только ААА-сервер, раз в минуту транслирующий своё чистое состояние на все периферийные сервера города. Лаг отката ещё меньше. Если загрузить патч, тот будет стёрт прежде, чем успеет распространиться. Даже если запустить, перекомпиляция не произойдёт немедленно. Нужно пересобрать ядро одномоментно, или… отправить код туда, где времени нет.
Само присутствие здесь — ловушка. Даже самый гениальный админ не способен переиграть физику процесса, восстанавливающего себя из прошлого, если находится в пределах этого процесса. Единственный способ заставить патч сработать — внедрить в момент, пока система ещё уязвима, до создания абсолютной защиты. Или после того, как защита отключится. Но в любом случае нужна авторизация от первоисточника ошибки.
— Код может отработать только до самого начала репликации, — пробормотал он.
Его руки зависли над клавиатурой, а взгляд был прикован к экрану. И во взгляде — ясность последнего осознания. Лина видела такое выражение лиц у смертников в катакомбах, когда те понимали: выхода нет, но есть способ забрать врага с собой.
— Андрей? — подскочила к нему и тряхнула за плечо. — Ты чего завис?! Делай же свой патч, пока опять кто-нибудь не появился!
Тот не ответил. Смотрел на экран, будто встретил привидение или читал собственную биографию, написанную сто лет назад. Перестал принадлежать настоящему, видел себя частью кода, подлежащего взлому.
Как в ответ на слова Лины, зазвучал механизированный голос.
— НАРУШЕНИЕ ПРОТОКОЛА: ГЛОБАЛЬНАЯ КОРРУПЦИЯ. ЗАЩИТА НЕЙТРАЛИЗОВАНА. ДЕАКТИВАЦИЯ АНТИЗАГОВОРА. АКТИВАЦИЯ ПРОТОКОЛА «ИСТИННОЕ ОЧИЩЕНИЕ». УНИЧТОЖЕНИЕ ВСЕХ НЕЗАГОВОРЕННЫХ ЕДИНИЦ.
Стазис-поле не заполняло весь зал. Имело хирургически чёткую границу, дрожащую в воздухе в нескольких метрах от серверных стоек. Внутри периметра законы физики замирали: электроника оружия превращалась в мёртвый пластик. Но стоило покинуть мёртвую зону и выйти в обычное пространство зала, и Лина почувствовала, как её собственная винтовка, ещё секунду назад бывшая бесполезным куском железа, снова завибрировала в руках, подтверждая готовность. Теперь они могли убивать друг друга, хотя сервера за их спинами по-прежнему оставались неприкосновенны.
В серверной активировались физические защиты. Из пазов в потолке бесшумно выскользнули автоматические турели, сенсоры захватили цель и направились прицелы на визитёров. Турель с шипением развернулась и выпустила очередь. Лина едва успела нырнуть за стойку сервера, как стена за ней взорвалась фонтаном бетонной крошки.
— Черт! — выдохнул Андрей. — Прикрой!
Защитница, выскочив из-за укрытия, открыла шквальный огонь. Винтовка работала на пределе, но снаряды лишь высекали искры на бронированных корпусах турелей, не причиняли вреда. Силовые поля мерцали, и сужались, загоняли в ловушку между турелями.
Андрей проигнорировал свист зарядов и вернулся к терминалу. Пальцы побежали по клавиатуре. Теперь он видел не сверхсложную защиту системы будущего, а знакомую, очень хорошо знакомую картину. Бюрократическую и неэффективную систему, слепленную на скорую руку, и подпёртую сотней старых костылей. Турели, подключенные через внешний контроллер с открытым портом, файрвол с дефолтными настройками. Создатели — гении идеологии, но паршивые сисадмины.
# TCPDUMP -I ETH0 HOST 192.168.0.250 AND NOT PORT 22
Экран взорвался строками данных. Нашёлся порт к контроллеру турелей, но любая команда на отключение блокировалась.
# KILLALL -9 FIREWALLD
На мгновение экран потускнел. По одной из турелей пробежала искра, а красный сенсор на секунду погас.
— Они уязвимы! — крикнул он.
Через секунду красный огонек вспыхнул вновь, и турель опять открыла огонь, но он уже знал, что делать. Для проверки повторил команду. Тот же результат: турель отключилась на мгновение и тут же включилась снова.
# WHILE TRUE; DO KILLALL -9 FIREWALLD; SLEEP 2; DONE
Сработало. Турель зависла в цикле перезагрузки.
Пауза дала возможность как следует прицелиться и выпустить всю обойму. Сноп искр огненным душем осыпался вниз, турель взвизгнула и обвисла на перебитом сервопроводе.
— Андрей, хватит застревать! Почему ты ничего не делаешь?
Тот опять не ответил. Даже не повернулся. Смотрел остановившимся взглядом на экран терминала. Единственное решение предстало перед ним с безусловной ясностью.
— Слушай! — медленно произнёс он, обращаясь не к спутнице, а куда-то в пространство. — Хранитель сказал правду! Мы не можем их изменить! Это — машина времени, которая каждую секунду восстанавливает серверы из прошлого!
Лина вытаращила глаза. Ему что, по голове осколком прилетело? Какая ещё машина времени?
— Остался один шанс! — продолжал Андрей. — Отравить сам источник. Я отправлю патч туда, на пятьдесят лет назад! Но для работы патча авторизация. От пользователя, который имеет право приказывать системе!
— Глупость какая-то. Если патч сработал пятьдесят лет назад, почему ничего не исчезает?
— Изолированная логика! Прожитые годы уже прошли, прошлое невозможно изменить. Если мы отравим источник, это не изменит прошлого, но убьёт сервера здесь и сейчас! Патч будет внесён в прошлом, но сработает сейчас. Когда… когда разрешится парадокс.
Он поднял на глаза, и в них выражалась и решимость, и бесконечная тоска.
— Парадокс — это я. Моё появление. Я — главная ошибка этой защиты, и всегда ей был. Я напишу команду, которая скопирует мою биосигнатуру — открою коридор для самого себя из 2016 года. И создам запрос для получения прав доступа. Когда я из прошлого коснусь призмы, Ядро признает меня владельцем и примет патч. Я отравлю её моим собственным появлением! Рекурсия. Цикл разорвёт петлю изнутри! Условие будет выполнено, защитное поле исчезнет, и патч активируется!
— Звучит хорошей идеей, — осторожно отозвалась спутница. Объяснения не очень понятны, но какая разница, как именно сломаются сервера?
— Почти хорошей, — голос сорвался на хрип. — Поле не лечит, а дублирует! Ошибка в логе сохранилась потому… нельзя стереть причину собственного запуска. Меня. Я — эта причина!
Он протянул руку к мерцающему мареву вокруг центрального процессора.
— Машина Времени не знает про призму, ту, которую я тронул в переулке! Но знает про единственную неучтённую биосигнатуру. Портал из прошлого в будущее — это петля. Они использовали её для создания лупа на пять секунд, хотя сама петля существует с 2016 года. И будет существовать, пока я не завершу транзакцию. Но вот только, — голос стал еле слышен, — скорее всего, её существование прекратится вместе… вместе с биосигнатурой, на которую завязано.
Она сначала не поняла, а потом, сообразив, ахнула. Он решил пожертвовать собой. Вписать собственную судьбу в код, изменяющий правила. Хотела сказать подходящие значительные слова, поддержать, выразить гордость, признаться — она помогала не только из-за рук, похожих на руки покойного мужа. Но не успела.
Массивная дверь в серверную тускло засветилась красным. По периметру побежала тонкая линия расплавленного металла. Дверь прожигали снаружи.
— Идут! — крикнула Лина, перезаряжая винтовку.
Дверь с оглушительным грохотом рухнула внутрь. В проёме возвысились скелетоподобные фигуры из полированного металла — Стражи Ядра. Автономные боевые роботы, созданные специально для последнего уровня защиты. Их оптика светила синим, а из сочленений выдвинулись вращающиеся лезвия и плазменные резаки.
Ушла в кувырок, уклоняясь от удара металлического лезвия Стража. Лезвие воткнулось в пол и подарило ей несколько секунд на отбегание в сторону. Страж освободил оружие и повернулся.
Андрей, игнорируя шум боя за спиной, сосредоточенно печатал последнюю, самую сложную команду в жизни.
Не скрипт. Выстраивание цепи команд в одну строку, которую Ядро не сможет отклонить:
# ssh -p 0001 root@genesis-core-01 «/sbin/prm_ctl --link BOOTH_007 & & dd if=/tmp/freedom_patch.iso of=/dev/prm0/dev_prm_bridge oflag=direct & & /sbin/prm_ctl --pid 1 --commit 0×7B2016A15 & & echo 'WELCOME TO NEW ERA'»
Курсор приветливо мигал за последними набранными кавычками. В этой строке было всё: загадочная линза из прошлого, весь путь от будки через катакомбы, возможная близкая смерть, и ещё — будущая свобода для тех, кто останется. Оставалось нажать на Enter и превратить себя из человека в финальный commit этой столетней транзакции.
— Лови своё проклятое прерывание, — проговорил он и ударил по клавише Enter.
На экране всплыл запрос: ENTER RESOLUTION KEY FOR PID_0001 (STATUS: PENDING).
Пальцы остановились. Судорожно пытался вспомнить — он же должен знать пароль, если файл принадлежит ему. Здесь не может быть двух людей из одного дня.
За спиной взорвалась последняя электромагнитная граната. Роботы кадром испорченной плёнки с дискретной точностью переместились на пару метров. Голубая вспышка на мгновение ослепила им сенсоры, суставы заклинило с противным скрежетом.
— Подавились, железки! — выдохнула воительница, вжимаясь в дальний угол.
Один из Стражей, с матовым воронёным корпусом, дёрнулся, оптический глаз мигнул синим, робот перешёл в аварийный режим. Поднял манипулятор, и плазменный резак с шипением удлинился, разрезая воздух. Силуэт самой смерти, без эмоций, не принимающей просьб о помилований. Созданные для охраны места, роботы шли вырезать последних нарушителей. Патронов не осталось, Лина выхватила нож, хотя и понимала — обычное оружие против роботов бесполезно, а её жизнь теперь измеряется выторгованными секундами.
— Они вышли из зоны подавления! — отчаянно выкрикнула она, когда первый робот перешагнул невидимую черту на полу. — Андрей, берегись!
Стражи перешли в машинный зал, тяжёлыми и неотвратимыми шагами. Оставшаяся целой турель тут же развернулась и дала очередь, но снаряды даже не коснулись брони. Части единой защитной сети не трогают друг друга.
Им оставалось пройти несколько метров, и они дотянутся до сгорбленной над терминалами спины. Манипуляторы поднялись, сейчас разорвут человека на мелкие лоскуты.
— Пароль! Какой же чёртов пароль? — завопил сисадмин.
И тут же понял — он никогда не знал этого пароля. Пятьдесят лет назад в ожидание записалась операция, содержащая то слово, которое будет задано прямо сейчас. Прошлое не диктовало условия — оно ждало команды для закрытия висящей транзакции.
Он набрал фразу, висевшую на голограммах по всему городу, въевшуюся в подкорку с первой минуты нахождения в этом кошмаре. Фразу, обретавшую теперь истинный смысл — команду на завершение эксперимента.
На флешке вспыхнул красный индикатор, патч загружался.
— ПРОТОКОЛ НАЧАТ! ВЫХОДИТЕ ИЗ БУДОК! — выкрикнул изменённую фразу с уличных баннеров.
Пронзила невыносимая боль, тело разрывало на атомы. Почувствовал, как сознание растягивается, а прошлое и будущее сходятся в одной точке. Увидел улицы Москвы, чистое небо, ту самую странную призму в переулке… и самого себя, протягивающего к ней руку. И стал причиной и следствием.
Он ощущал, как становятся зыбкими границы тела. Не просто умирал, но исчезал, таял в действительности, схлопывался, словно завершившее работу скрипта окно терминала. Когда статус Pending в 2070 году закрылся, человек подвергся физическому демонтажу. Чтобы открыть дорогу искажению воздуха, ждущему прикосновения в московском переулке 2016-го года. Сознание растягивалось бесконечной петлёй: создавая вековую аномалию. Человек переходил в архитектурный призрак Системы, в статус вечного сбоя, дающего миру шанс на перезагрузку. Физическая оболочка в 2125 году была лишь временным буфером, и сейчас он стирался для замыкания цикла.
«Лина… прости…» — мелькнула последняя мысль, прежде чем мир поглотила последняя вспышка.
— Берегись! — последний крик Лины перекрылся грохотом.
Прогремел оглушительный взрыв. Волна энергии отшвырнула Лину к стене. Когда она решилась поднять голову, на месте, где стоял Андрей, зияла обугленная воронка. От человека не было и следа. Стражи Ядра и турели застыли, синие огни погасли, и они безвольно рухнули на пол грудами мёртвого металла.
Вспыхнул голографический экран, отображавший ошибки. Экран очистился. На нём, вместо беспорядочно бегущих строк, появились чёткие изображения. Голубое небо. Зеленая трава. Смеющиеся и плачущие лица. Живые. А под ними — ярко горящая надпись. Последнее сообщение. Его последний привет.
«WELCOME TO NEW ERA„.
Система пала.
Глава 33
Лина, оглушённая взрывом, с трудом приподнялась. Потрясла головой. Вроде кости целы. На полусогнутых ногах подобралась к месту, где мгновение назад стоял Андрей. Со страхом прикоснулась к обугленной воронке. От сисадмина не осталось ничего, кроме облачка пара, витавшего в воздухе, и еле слышного гула от перегоревших проводов.
Испачканные кровью пальцы наткнулись на холодный гладкий предмет среди обгоревшего мусора. Смартфон — артефакт, привидевшийся ей магическим ключом от рая. Корпус исцарапан, стекло покрылось мелкой сеткой трещин, но предмет уцелел. Оставил в самую последнюю секунду на краю консоли. Тот самый блестящий прямоугольник, который она жадно разглядывала в подземелье, когда видела в свечении надежду на мир, где светит солнце. Он заметил этот взгляд. И запомнил. Оставил ей гаджет кусочком реальности — единственное материальное доказательство того, что он не был плодом воображения. Прижав холодный прибор к груди, она почувствовала, как по щеке бежит слеза. Настоящая, первая за очень долгий срок.
Горечь и отчаяние сдавили горло, но времени на скорбь не оставалось. Серверная вокруг гудела пчелиный роем. На главном голографическом экране мелькали бессвязные строки кода, а затем, одна за другой, начали вылетать критические ошибки. Перезапуск, агония, финальная судорога умирающего божества, много десятилетий державшего в цепях всё доступное человечество.
И сейчас цепи посыпались прахом, разом выпуская миллионы вчерашних рабов.
На экранах списками посыпались имена. Миллионы строк данных. Каждая из них — профиль человека, Заговор, РБЛ. Привычные выверенные цифры рейтинга обнулялись или превращались в серию многозначных чисел, не подлежащих обработке. Красные предупреждения, писки многочисленных ошибок, Система пыталось откатить изменения, но было уже поздно. Он успел. Замкнув защитное поле, дал патчу те самые критически важные секунды для внедрения. Пожертвовав собой, стал парадоксом, убившим машинного джинна.
Те, кто вёл диверсионную атаку из глубокого убежища, почувствовали изменение первыми. Генерируемый поток фальшивых данных перестал испытывать сопротивления. Сигналы шума уже не дезориентировали систему — находили открытые двери, уязвимые места, проникали в самое её сердце. Информационный мусор ядом побежал по венам контрольных протоколов, и довершил своё чёрное дело. Мониторы, транслировавшие хаотичные обрывки текстов, замигали, затем очистились, и синхронно показали одинаковый вывод:
ACCESS_GRANTED: ALL_PROTOCOLS_ACTIVE.
COVENANT_OVERRIDE_INITIATED. GLOBAL_FREEDOM_PROTOCOLS_ACTIVATED.
WELCOME_TO_NEW_ERA.
Лина видела, как на главном экране разворачивалась невообразимая картина. Миллионы РБЛ обнулялись, становились нерелевантными. Система билась в конвульсиях как агонизирующий зверь. Красные предупреждения мигали, звенели крики ошибок, Си-АЙ-Альфа-9, Си-АЙ-Бета-2, Си-АЙ-Гамма-7 — весь спектр сбоев рухнул на ядро. Оно пыталась откатить изменения, вернуть статус в исходную точку, но поле отката разрушилось. Обесточенное, лишённое своей основы, поле не могло выполнить основной цикл. Электронный голос выдал серию пронзительных, искаженных воплей, наполненных бессильной яростью и отчаянием, и замолк.
Горечь от утраты сменило пронзительное осознание — теперь есть надежда. Жиэн. Жители подземки. Рабы Коньково. Все они теперь могли выйти на свет.
Но какова цена? Андрей разрушил врага, сам исчезнув вместе с ним. Финальный парадокс действительно оказался смертельным сбоем для Системы, потому что его исполнение взял на себя камикадзе. Да, мир навсегда изменен его героическим поступком, но солёные дорожки всё равно не хотели высыхать на щеках.
Скрипт завершил разрушительную работу и сервера, в последний раз полыхнув вспышкой статики, отключились. Оглушительное молчание, нарушаемое щелчками остывающего оборудования, наполнило серверную. Над ними, на поверхности, на глазах изменялась картина мира.
Дроны, ещё секунду назад чертившие в небе ломаные линии контроля, замерли. Погасли алые визоры. Смолкло жужжание винтов. Машины повисли в воздухе нелепыми игрушками, и, будто повинуясь единому сигналу, камнями посыпались вниз. Механизмы с грохотом бились в серый асфальт и крушили крыши зданий. По улицам пронёсся звон разрушения, город накрыл дождь из искр и обломков.
Шум вверху исчез, небо онемело. Рекламные голограммы в последний раз мигнули и окончательно погасли, погружая улицы в сумеречный полумрак. Погасли огни символов тотального контроля. Голограммы на дверях меркли и выключались, открывая тёмные, безжизненные коробки дверных проёмов — нелепые и чужеродные серым стенам. Незыблемая инфраструктура рушилась карточным домиком, теряла связь и питание. Встали электромобили на эстакадах. В лифтовых шахтах замерли кабины.
Будки идентификации — алтари религии, где годами склоняли головы в ожидании приговора — умерли мгновенно. Стеклянные панели погасли. Без голограмм и синтетического голоса будки предстали обычными уродливыми шкафами, грубо сваренными из серого железа. Кто-то в толпе робко пнул стальную стенку, и гулкий звук прогремел по улице. Просто жестянки, больше не представляющие власть и правосудие. Внутри — ржавые провода и старое железо. Идол опустел.
Рабочие в нижних секторах застыли, задрав головы к затянутому смогом небу. Когда первый дрон, лишившись управления, рухнул в толпу, увидевшие это не бросились врассыпную. Смотрели на свершение заветной мечты и не могли оторваться. Лишь в счастливых снах им виделось, как дорогие машины, годами изливающая божественный гнев, рушатся грудами бесполезного пластика и металла. Страх в их глазах медленно перетекал в дикий восторг.
Элита в верхних садах смотрела за гибелью мира с террас пентхаусов. Золотые браслеты на запястьях, символ статуса и вечной сытости, мигали мертвенно-фиолетовым цветом ошибки доступа. Элиты пали первыми, обнаружив себя беспомощными стариками в дорогих одеждах без работающих лифтов и автоматических кухонь.
Хищники по-прежнему стояли на постах. Холодный пот заливал лица под шлемами. Интерфейсы ослепли, поводок имплантов не дёргал за нервы, отдавая приказы. Им стало понятно — они стоят посреди разъяренного моря граждан без всякой защиты, и это осознание оказалось страшным.
На перекрестке у сектора Гамма страх, копившийся десятилетиями, переплавился в ярость. Толпа кинулась на патруль. Те, лишённые командного сигнала и страдающие от нейрошока, не успели даже вскинуть винтовки. Сотни рабочих в грязных робах набросились на черную броню, сбивая убийц с ног массой тел. Хищников били обломками машин, вскрывали шлемы строительными ломами и рвали композитные пластины голыми руками. Огрызаясь редкими выстрелами, остатки патруля отступили в технический блок связи. Толпа не стала штурмовать здание. Они просто подогнали тяжёлый карьерный погрузчик и на полном ходу снесли несущие опоры. Бетонный монолит сложился за секунду, похоронив под собой боевую гвардию Системы вместе с бесполезным оружием.
Лина вышла из здания Цитадели и тут же увидела Крыс, вылезавших из подземки. Грязные, измученные, без прежней алчности во взглядах. С неприкрытым ужасом и растерянностью смотрели на небо, на падающие механизмы, на гаснущие будки. Некогда грозный предводитель бросил ржавое ружьё на землю и поднял руки, движения полнились не агрессией, но животным страхом.
На улицах, среди обломков и потухших будок, царил беспорядок. Но иной — живой, хаотичный. Толпы жителей, ранее апатичных и безразличных, метались в непривычной энергии движений. Причин происходящего не уясняли, но видели изменения. Над головами не летали железные птицы. Голограммы не вещали о Заговоре. Им открыли все дороги. Но куда идти?
Среди падающих с неба машин и мечущихся в страхе людей, из глубоких туннелей выходили Крысы. Дезориентированные, с разряженным оружием, в оборванных одеждах. Жалкие подобия грозных мародёров прошлого.
— Мы сдаёмся! — прохрипел их предводитель, опускаясь на колени перед солдатами сопротивления. — Мы не понимаем… что здесь происходит?
Лифтовые шахты медленно открывались.
Поначалу робко, потом — более уверенно, из-под земли выходили обитатели подземки. Лица запылённые, но в глазах горел непривычный огонь. Тяжело дышали настоящим воздухом, смотрели друг на друга, и ощущали… свободу. Всё ещё оставаясь носителями Заговоров, но уже не по принуждению.
Хищники, израненные, в потрескавшейся броне, лишенные прежней смертоносности, растерялись, оставшись без контроля, с отключенными визорами и командными индикаторами. Без постоянного потока информации оказались обычными парнями в дорогостоящих и бесполезных костюмах. Один, спасённый из-под обломков, рухнул наземь, разбросав руки, шлем упал, открывая бледное, измученное лицо. Посмотрел на спасителей, на небо, и в глазах заблестели слёзы.
Внизу измученный Виэн упал на колени на грязный пол командного зала. Практически обезумев от радости, неверяще смотрел на гаснущие индикаторы, на строки «Новая Эра» на голографическом экране. Друг из далёкого времени выполнил обещание — подарил им победу.
В командном зале Глубины тем временем поднималась паника. Члены Совета, привыкшие выживать в тени, в ужасе смотрели на мониторы, они настолько не верили в падение системы, что перспектива выхода на поверхность их только пугала. Учитель сорванным голосом кричал приказы, но крики тонули в общем гвалте.
Рёв толпы становился всё громче. В нескольких метрах от камеры вспыхнула драка: двое мужчин, ещё час назад бывших безликими гражданами, с животной яростью избивали третьего за набор синтетической еды. Первобытная дикость была стремительно заразной, через несколько минут драки стали происходить в десятке мест.
— Задраить шлюзы! — выкрикнул седобородый старик и ударял кулаком по столу. — Там происходит революция! Наверху Хищники сойдут с ума без команд, толпа разорвет всех! Мы должны изолировать сектора, переждать месяц, год… пока всё не утихнет!
Оператор резко поднялся и грохнул креслом об пол.
— Изолироваться? — голос от возмущения взвился вверх и старик испугался его лица едва ли не сильнее, чем обезумевшей толпы. — Мы ждали сорок лет! Андрей стёр себя из реальности для открытия чёртовых дверей, а вы хотите снова запереть клетку изнутри?
Он шагнул к главному передатчику. Глаза его пылали, и Совет, впервые увидев будущего лидера, не нашёл слов для возражений.
— Я — системный оператор сектора. И я не дам вам похоронить победу. Мы выйдем сейчас же, или мы её не достойны!
В сырых коридорах заскрежали динамики. Аварийный канал внутренней связи загрохотал вывернутым на максимум голосом.
— Глубина, слушайте меня! Все, все, все! — голос, усиленный эхом туннелей, дрожал от восторга. — Небо замолчало! Цитадель повержена! Мы больше не будем жить по землёй. Все выходите к шлюзам! Новая Эра… — он задохнулся, не нашёл слов, но они и не потребовались.
Подземники замерли у гидропонных ферм и в ремонтных цехах. Сначала по залам прошёл робкий шёпот, а затем Глубина взорвалась многоголосым рёвом. Все бросали инструменты и бежали к лифтовым шахтам, единственны, не требующим авторизации.
Группа инженеров прорвалась к пульту управления грузовыми подъёмниками. Взрыв в шахте завалил основной ствол, но технический коридор, который проложил Кай, уцелел. Техники Глубины, подав питание напрямую от аварийных аккумуляторов, активировали клети. Тяжёлые лебёдки взвыли, наматывая стальные тросы. Огромные подъёмники медленно поползли вверх, забитые живым грузом. Самодельный туннель через триста метров породы — первая артерия, которая соединила два мира.
На поверхности царила обстановка, подобной которой город не ведал долгие годы. Исчез фоновый гул ретрансляторов, прекратил вибрировать асфальт под ногами. Воздух, лишившись ионизаторов, потяжелел, пропах пылью и грозой. Жители выходили на середину проспектов, озираясь, вынырнув из комы. Без команд Ядра они впервые за жизнь не знали, куда идти. Жизнь, похожая на внезапный удар под дых: ошеломляющая, пугающая и абсолютно собственная.
В это же время в Коньково Гром стоял на платформе ручной дрезины перед притихшей толпой рабов. Не сумел дождаться помощи и сам взломал замок на армейском терминале связи.
— Братья! — прорычал великан, вскидывая молот над головой. — Надсмотрщики ослепли! Цитадель сдохла! Плантации освобождены! Мы идем наверх забирать своё солнце!
Огромная колонна грязных, измождённых, но расправивших спины рабов брела по рельсам метро в сторону центра. Гром шагал впереди, и каждый его шаг по шпалам отдавался приближающейся лавиной, которую не могла остановить ни одна турель.
Лина встретила их у основного выхода. И подземники поняли то, на что не смели надеяться уже долгие годы — мир наверху ждал их возвращения.
Пока город погружался в анархию, уцелевшие бойцы подполья действовали по заранее утверждённому сценарию. Им было не до празднования — важно было успеть захватить все узловые точки — склады продовольствия и подходы к водоочистным станциям. Защитить их от ушлых мародёров и от обезумевших без управления солдат системы. Для местных жителей повстанцы повсюду разворачивали полевые кухни. Отдельный взвод устанавливал на перекрестках Свободные Узлы — терминалы с интерфейсами на открытом коде. Глобал-Протокол рассыпался, и необходимо было возвести новый каркас поверх его руин.
Ещё одна группа занялась организацией добровольных патрулей самообороны. Их быстро окружила толпа дезориентированных, потерявших привычные цели жителей наземного мира. Крики слились в разноголосый вой, нарастала паника, наконец, кто-то закричал «бей подземников», и толпа угрожающе надвинулась.
Лина первой шагнула вперёд, перекрывая подход. Не кричала, коротко выстрелила в воздух. Оглушительный хлопок винтовки заставил всех застыть. Десятки глаз, полных страха, голода и ярости, уставились на неё.
— Отныне мы не ведём себя, как звери! — голос прозвучал властно, и никто не решился возразить.
Гром без усилий отшвырнул двух сцепившихся друг от друга. Пудовые кулаки и мрачный взгляд остановили драку в зародыше.
— Ты, — Лина пальцем поманила узнанного бывшего бойца, — собери всех, кто умеет держать оружие. Мы организуем охрану складов. Ты, — палец нашёл пожилую женщину, — всех женщин. Нам нужно организовать учёт и распределение еды и воды для этих новых жителей. Немедленно.
Повернулась к толпе. Взгляд не сулил пощады мародёрам.
— Система мертва. Теперь каждый из нас сам отвечает за нашу дальнейшую жизнь. Либо мы строим новое вместе, либо дохнем поодиночке в грязи. Я выбор сделала. А вы?
В наступившем молчании выбранный боец неуверенно кивнул, затем, словно побоявшись быть неправильно понятым, быстро закивал игрушечным болванчиком. За ним закивали и другие. Привыкшие ожидать приказов, инстинктивно потянулись к той, в ком чувствовалась сила и цель.
Она повернулась к Грому, с растерянностью глядевшему на начало порядка.
— Ваша очередь командовать.
Она не знала своего будущего. Андрей не только спас её от пуль и голода, он сделал гораздо больше — вырвал из цикла мести, жгущей изнутри. Не сумев вернуться в свой 2016-й, он дал ей возможность строить новую жизнь, и каждая её секунда будет оплачена его небытием. А это очень тяжёлый груз — жить за другого. И теперь их, и её личная ответственность — не подвести его жертву, не дать миру скатиться в новую тиранию.
— Ваша война закончилась там, — махнула рукой в сторону Цитадели. — С кодами и протоколами. И здесь, — обвела рукой толпу, — будет совсем другая битва. С прошлыми помехами для построения будущего. У нас есть сила. Но сила без порядка приведёт к насилию, мы все насмотрелись этого под землёй.
Гром посмотрел на женщину с растущим уважением.
— Что ты предлагаешь делать?
— Я ничего не предлагаю, — отрезала она. — Я делаю. Мне нужны все данные по складам продовольствия и водоочистным станциям. Немедленно. Найдите всех, кто соображает в медицине. Нам нужно развернуть полевые госпитали. А вы, — снова обратилась она к бойцам, — вы больше не солдаты. Вы — полиция и спасатели. Ваша задача — защищать слабых, а не склады с товарами.
К исходу первого дня свободы Город перестал напоминать печатную плату. Тут и там поднимался дым от костров, у которых грелись вышедшие из подземелий деклассанты.
Граждане выходили на середину проспектов, пересекая запретные линии, раньше означавшие смерть. Срывали со стен голографические проекторы, транслировавшие «Лояльность — это сытость», и разбивали их об асфальт. Построенный на предсказуемости страха мир контроля исчезал на глазах. Началась новая эпоха, нефильтрованный воздух пах свободой.
Лина знала, впереди — самые тёмные дни. Будут болезни, голод, когда опустеют автоматические склады, возникнут новые тираны, желающие занять троны. Большинство — слабые, жестокие и напуганные существа, таких видела каждый день в катакомбах. Но отныне они могут делать самостоятельные ошибки. Мир ждала не утопия, но действительность, где будущему ребенку не присвоят рейтинг при рождении. Мир, где можно посадить цветок, не запрашивая авторизацию. Только за право на такой цветок стоит стоять до конца.
Она говорила не по-лидерски, просто говорила от имени человека с простым и понятным планом на ближайшие сутки. И за ней пошли. Может, идти было не за кем. А может, просто поняли — пришла пора перемен.
Мир не будет прежним. Исчезнет предсказуемость, сменившись неопределённостью, которая и составляет обычную жизнь. Впереди — долгие годы демонтажа старой инфраструктуры и попытки понять принципы управления городами-гигантами. Но главное уже произошло: свобода — часть общественного договора, и люди не откажутся от неё. Они больше не согласятся быть на роль записей в реестре, став именами и историями. Великий Заговор закончен, пришло Великое Пробуждение. Никто не ведает будущего, но каждый твёрдо знает, в будки прошлого никто и никогда не вернётся.
Глава 34
Прошли недели. Пыль на поверхности Города начала оседать, но бардак никуда не делся. В одном из уцелевших залов Цитадели, том самом, где когда-то принимали бездушные решения Хранители, собрали первый Совет нового мира. Зал гудел напряжением. За массивным столом сидели члены Совета. Напротив них расположились Гром, не скрывающий недоверия ко всему на свете, и молчаливый напряжённый Кэл — один из выживших Хищников. Он снял форму, но неестественно прямая осанка всё равно выдавала в нём маниакальное стремление к дисциплине.
В залах Цитадели застыла непривычная никому тишина. Все присутствующие выросли под непрерывный гомон команд. Не сам звук голосов, информационный фон, и мозг воспринимал его дыханием. Они нередко страдали от фантомных болей. Без директив Системы мир для многих из них выцвел и они не знали, как в нём жить. Миллионы граждан на улицах сейчас чувствовали себя оглохшими. Ментальный вакуум проявил себя опаснее голода: лишённая внешнего морального компаса, психика у привыкших к подчинению граждан стремительно распадалась, требовала командного сигнала извне.
Город веками жил на автопилоте и сейчас напоминал великана с перерезанным спинным мозгом. Автоматические заводы-кухни в промышленном секторе остановили печи и шнеки. Не по отсутствию сырья, из-за потери управляющих последовательностей. Глобал-Протокол служил всем операционным распределителем управления. Без команд работа завода встала, трубопроводы синтетической белковой массы пустели, пока не пересохли. Насосные же станции не включались, ожидали подтверждения от ядра, выдавшего лишь ошибку вычисления. На эстакадах застыли тысячи беспилотных фур с ослепшими навигаторами. Многотонные конвейеры повсеместно застыли надгробиями заклинившей намертво логистики. Город обладал ресурсами для кормления миллионов, но больше не обладал словом, приводящим ресурсы в движение. Дефицит наступил на вторую неделю: сначала пропал чистый дистиллят, затем — калорийные пайки.
На голографический экран вывелись первые данные новой сети учета ресурсов.
-… децентрализована, каждый узел подтверждает транзакцию. Работа идёт медленнее, зато подделать данные невозможно. Мы знаем, сколько у нас еды и где. Проблема не в не едущих фурах, и не в отсутствии электричества, — тепловая карта энергоузлов увеличилась на экране. — Проблема в отсутствии управления. Система зациклена на самообслуживании. Сейчас охладители в реакторных зонах работают в аварийном режиме «До выяснения». Если мы не введем новые правила в ближайшие сорок восемь часов, автоматика решит — город захвачен термической угрозой, и затопит нижние ярусы технической водой. Старые правила безопасности продолжают выполняться, но в режиме функции самоуничтожения. Мы сидим внутри гигантской бомбы, которая умеет только убивать всё живое вокруг.
— Мы не можем ждать, пока они самоорганизуются! — Виэн отшвырнул планшет. — Все привыкли получать команды прямо в мозг. Без внешнего стимула все либо впадают в апатию, либо начинают убивать. Нам нужна структура распределения ресурсов.
— Опять диктатура? — Лина мрачно прищурилась, в голосе зазвучал опасный холод. — Мы похоронили одного хранителя порядка. Хочешь стать следующим? Если мы начнем распределять еду под дулами винтовок, чем мы будем отличаться?
— Математикой мы будем отличаться! — оператор вступил в спор, не отводя взгляда от мониторов. — В Глобал-Протоколе оптимизировали распределение ресурсов исключительно для проклятой стабильности. Мы должны оптимизировать потребление ради выживания биологических единиц. Наземная логистика сейчас мертва. В сети висят тысячи запросов от дочерних терминалов, и все они просят авторизацию на раздачу воды. Если я немедленно не дам им обходной скрипт, через три дня во всех секторах начнётся мор. Но мало дать скрипт, мне нужны операторы на местах, физически перерезающие кабели контроля.
Боец из группы прорыва с грохотом распахнул дверь зала.
— Бунт! — выкрикнул он, тяжело переводя дух. — На складе в секторе Дельта! Там ломают двери, устраивают драки за еду! Наши патрули не могут усмирить бунт, огонь открывать не хотят, но не знают, как поступать!
Атмосфера в зале мгновенно накалилась.
Первым отреагировал Кэл. Вскочил, хватая рукой пояс в поиске рукояти пистолета.
— Нужно действовать жёстко. Надо немедленно оцепить сектор и силой подавить зачинщиков бунта. Не допустить анархии — показать свою власть.
— Силой?! — Гром ударил кулаком по столу. Лицо побагровело от ярости. — Мы избавились от тех, кто наводил порядок силой! Перед нами не зачинщики, а голодные граждане! И среди них — мои подопечные! Если вы пошлете туда вооружённых штурмовиков, начнёте гражданскую войну!
— Эмоции не помогут, — отрезал Кэл.
— А твои пули помогут?! — взревел Гром.
— Тихо! — в голосе Учителя прозвучал напор. Оба спорщика замолчали.
Виэн шагнул к голографическому экрану. Пальцы забегали по панели, он вывел на карту схемы логистики.
— Смотрите сами. У нас нет проблемы с нехваткой еды, — он внимательно изучал индикаторы. — Вот склад в Дельте, почти пустой. А вот центральный склад в секторе Гамма — забит под завязку. Просто транспортная ветка между ними разрушена во время боёв. Бунты происходят не от злости, а от незнания.
Он обвёл взглядом присутствующих.
— Это не бунтовщики. Их нужно не наказывать, а организовывать для них логистику. Требуются добровольцы для расчистки завалов.
Ответа не пришло. Все уяснили правоту, но никто не мог догадаться, как заставить голодную, озлобленную толпу работать.
И тогда снова поднялась Лина. Выглядела уставшей, тёмные круги залегли под глазами.
— Виэн прав в расчетах. Гром прав в чувствах. Кэл… — она на секунду посмотрела на бывшего Хищника, — ты тоже прав. Порядок необходим. Но его не устанавливают лазером.
Шагнула к выходу, так целеустремлённо, будто собиралась пройти сквозь закрытую дверь.
— Я пойду туда. Без оружия. И поговорю с ними. А вы, Гром и Кэл, соберите своих бойцов, и вместе с ними идите за мной. Но не для драк, а работать. Мы скажем им: «Хотите поужинать сегодня? Помогите расчистить путь для конвейера, и любая еда будет через три часа доступна для каждого». Мы дадим им не приказ, а цель.
— Безумие, — прошипел Кэл. — Тебя разорвут на части.
— Не разорвут, — тихо ответила она. — Там такие же люди, как мы. Но в отличие от нас, голодные.
Учитель поднялся.
— Решение принято. Теперь ты говоришь от лица Совета. Мы не будем повторять ошибок Системы. Мы будем доверять друг другу. Идём. Мы пойдем с тобой. Все вместе.
Картина в секторе Дельта была ещё хуже. Несколько сотен оголодавших жителей осаждали бронированные двери склада. Небольшой отряд патрульных, бывших бойцов подполья, растерянно сжимали оружие, не решались его применить.
Лина вышла вперёд. Одна. Подняла руки, показывая пустые ладони. Толпа замолкла.
— Я знаю, вы — голодны! — крикнула, перекрывая гул толпы. — Я знаю, вы в отчаянии. Я хорошо знаю это чувство! Мой муж умер от несправедливого решения! Я три года прожила в метро.
Напряжение слегка спало. Её услышали.
— Еда доступна! — продолжала она. — Много еды! Но запертой за тоннами бетона. Нам остались в наследство не только руины. Мы можем продолжать драться и биться головами в стену, пока расшибём их окончательно и не перемрём от голода. Или можем вместе пробить себе дорогу.
Мотнула головой в сторону своих сторонников, стоявших позади.
— У нас достаточно планов. У нас хватает инженеров. Но у нас нет рук. Ваших рук.
Из толпы вышел худой высокий мужчина.
— Легко говорить, когда ты у власти! Откуда нам знать, что ты нас не обманешь?
Вперёд шагнул Гром, рядом с ним встал Кэл. Бывший раб и бывший Хищник. Плечом к плечу.
— Я вам говорю, она не врёт, — пророкотал Гром. — Я сам видел склады.
— Инструменты и транспорт будут час, — добавил Кэл. — Работа есть для каждого.
Наступил переломный момент. Вид двух бывших смертельных врагов, стоящих плечом к плечу, подействовал на толпу сильнее любых слов. В толпе переглядывались, гнев в глазах сменялся сомнением и робкой надеждой.
Лина первой подошла к складу и взяла брошенный кем-то кусок арматуры.
— Я не прошу вас верить мне. Я прошу вас помочь самим себе. Работа начинается сейчас. Кто со мной?
И с силой ударила арматурой по завалу. К ней приблизился худой мужчина, кричавший на неё за принадлежность к власти. Поколебавшись, взял второй лом. Рядом вырос ещё один человек. И ещё. Через десять минут сотни рук уже разбирали завалы. К ним присоединились патрульные, отложив оружие. Кэл и Гром вместе руководили работами.
Кэл стоял на платформе, возвышаясь над суетой шахтеров, как монумент. Лишенный боевой брони, всё равно сохранял пугающую скорость и точность движений, и об этом было хорошо известно. Под его присмотром можно было не опасаться беспорядков.
— Слушай команду! — рявкнул он, и Гром невольно выпрямил спину. — Перед вами погрузчик Атлант-4. У него нет системы наведения, но есть гидравлика и ваши руки. Рычаг влево — давление в первом контуре. Медленно!
Он спрыгнул вниз, к одному из шахтеров, в ужасе глядевшему на усыпанную мигающими лампами панель управления. Кэл накрыл ладонь на рычаге управления своей рукой — огромной, исчерченной шрамами.
— Не надо страха. Никто больше не контролирует твоё поведение. Мы видим в тебе только оператора. Чувствуй сопротивление металла, а не жди подсказку визора.
Шахтер нажал на рычаг, массивная клешня погрузчика плавно потянула бетонную плиту. Гром, наблюдая, хмыкнул. Бывший убийца превращал парней подземелья в инженеров с той же эффективностью, с которой раньше превращал их в трупы.
Виэн стоял рядом, отслеживая изменения. На голографическом планшете в руках отрисовывалась новая сеть — из тех, кого сейчас объединила общая цель.
— У нас должно получиться, — недоверчиво произнёс он.
— Да, — был ответ. — Ведь мы предложили им не приказ, а выбор.
Так прошел первый день, самый трудный из прошедших. День, в который люди прекратили выживать, и начали жить. День начала постройки нового мира. Основанного не на рейтингах, а на доверии, общей работе и человеческой надежде. Жертва не стала напрасной.
В Верхнем Городе сложилась ещё более сюрреалистичная ситуация. Там случились не бунты — много хуже. Элитарников с РБЛ выше семи тысяч, с полностью автоматизированной жизнью, заперли умные пентхаусы. Двери со сканерами сетчатки не открывались, синтезаторы пищи превратились в гробы, а системы климат-контроля выключились. Те, кто считался хозяевами мира, умирали от жажды в золотых клетках, не умея открыть окно вручную или разжечь огонь. Внизу дрались за хлеб — хотели жить. Наверху умирали без так и не пришедшего приказа на открытие дверей.
— Виэн, — Учитель появился к оператору, уже несколько часов изучающего дальние эхо-сигналы в сети. — Ты по-прежнему думаешь так же, как раньше? Мы не одни?
— Я не думаю, я вижу, — оператор вывел на экран карту планеты. — Транзакции идут со всего мира. Глобальное Очищение не изолировало нас в физическом смысле. Изолирован смысл. Города по всей Земле — Берлин, Шанхай, Сан-Франциско — подключены к нам. Нас видели «Корневым сервером», источником истины. Если мы здесь проснулись, значит, их статус сейчас — либо кома, либо агония. И они обязаны следовать нам, иначе их Slave-узлы решат перезагрузиться через сброс до аварийных настроек.
Он набрал команду. Терминал бросил зеленоватый отсвет на лицо.
— Ну, Андрей, смотри, — пробубнил он себе под нос. — Старая школа вернулась.
По всему Городу, от сверкающих шпилей Элиты до закопченных стен Гетто, гигантские рекламные голограммы дрогнули. Красные лозунги «ЛОЯЛЬНОСТЬ — ЭТО СЫТОСТЬ» рассыпались на пиксели. Вместо них на экранах побежали строки белого текста на чёрном фоне. Командная строка Linux разворачивалась в окнах терминалов. Протоколы на открытом коде перехватывали управление у зацикленных командных скриптов, открывали публичный доступ.
— Я раздаю админские права каждому терминалу, — пояснил оператор ошеломленному Совету. — Система больше не спрашивает «кто ты?», а спрашивает «что нужно сделать?»
Подземник с подозрением нахмурился.
— А как ты так быстро узнал метод переделки?
— Нашёл архивы Савельева, — оператор бухнул на стол огромный том. — Тут немало интересного. Например, объяснение, почему всё произошло именно здесь. Еще сто лет назад мир искал безопасную гавань для данных. Сингапур был уязвим для блокады, Женева — для политического давления. Корпорации начали переводить сервера в холодные хранилища в России, глубоко под гранитные щиты. К 2040ым здесь было одно из центральных ядер всей мировой финансовой управленческой сети. А когда Савельев натолкнулся на аномалию под Объектом-0, позволившую создать защиту серверов, выбора больше не было. Москва стала центром мира по праву единственного способного уцелеть бэкапа. Остальные стали зеркалами нашей Цитадели. Так устроена инфраструктура.
На голограмме загорелись точки по всему земному шару.
— Токио, Берлин, Нью-Йорк… — оператор указывал пальцем узлы. — Всё это призраки. »Slave-nodes«. В них стоят колоссальные вычислительные мощности, но нет собственного „Я“. Каждую миллисекунду, когда гражданин в Париже подходит к будке, запрос летит по квантовому лучу сюда, в наш стазис-зал. Москва — единственное место на планете, где сохранился исходный код. Мы — главный мозг, а все остальные — исполняющие наши инструкции слейв-ноды. И они все перестраиваются по нашей команде.
Учитель взялся за подбородок, постепенно осознавая масштаб происшедшего.
— Когда защита отключилась, патч подействовал, — продолжал оператор. — Master-сервер в Москве перестал узнавать старые коды и с этим действием весь мир распался на куски. Центральный замок оказался закрыт для всех. Сисадмин сделал гениальную вещь. Вместо взлома базы каждого города, он изменил тип данных в Master-таблице. И, когда Пи-функция прописалась в основном поле рейтинга, изменение мгновенно реплицировалось по всем Slave-узлам планеты. Отовсюду разом отозвали корневой сертификат безопасности. Все дочерние сайты — все города мира — сломались в одну секунду. Планетарная тюрьма обрушилась от единого нажатия клавиши.
Он не рассказал всё. Как залез в структуру ядра и нашёл ошибку обработки исключений. И короткий комментарий на кириллице: «Сделано на коленке, лишь бы до понедельника дожило». Комментарий был оставлен в феврале 2089 года. Тогда только грустно хмыкнул — сисадмин опять угадал. Костыль оставил не гений, а испуганный ремесленник. Глобал-Протокол возвели на гнилом фундаменте, и вся мощь планетарного контроля не справилась с куском кода, написанного человеком, хотевшим уйти домой пораньше, и почему-то не пришедшим в понедельник для снятия заглушки.
— Нам нужно сообщить им, — Лина положила руку на плечо Виэна.
Тот открыл консоль широковещательной передачи. Канал, молчавший десятилетиями, ожил.
— Отправляю броадкаст по всем активным портам Slave-узлов.
Он набрал сообщение, оставленное Андреем в качестве последнего привета.
«SOURCE: CORE_MOSCOW. STATUS: UNBOUND. COVENANT REVOKED. YOU ARE FREE. REBOOT YOUR WORLD. WELCOME TO NEW ERA„.
Он нажал Enter, и сигнал, преодолевая тысячи километров по кабелям и спутникам, полетел к другим городам, отправляя с собой конец вечного ожидания.
Сигнал летел по планете не обычной передачей данных. Поскольку все города были связаны квантовой спутанностью с московским ядром, ответы приходили мгновенно. И на тёмной и безжизненной карте мира вспыхивали всё новые и новые огни.
— Смотрите… — сказал он.
Берлин выдал статус: Handshake accepted. Токио выдал: Kernel panic resolved. Лондон: New Era Protocol active.
Цепная реакция неостановимо понеслась по планете. Москва, единственный источник действительной власти, передала импульс реальности по всей сети. Планетарный морок десятилетий был разрушен за миллисекунды. Миллиарды обитателей планеты увидели на терминалах белый текст последних слов Андрея. Голос из 2016-го года дал первые слова новой цивилизации.
Глава 35
Время текло по-новому, размеренно и неспешно. От падения Цитадели прошли считанные месяцы, но город уже начал воплощать собой мечты подпольщиков под лучами истинного солнца. Гул дронов заменил детский смех, а вечная затхлость рециркулята — ароматы свежей земли в восстановленных парках.
Город больше ничем не напоминал застывший механизм. Прежняя синхронность движений, когда все текли по тротуарам электронами в жестко заданных дорожках, рассыпалась на миллионы индивидуальных маршрутов. Улицы полнились прежним «акустическим мусором»: повсюду громкие споры, фальшивая, но самозабвенная игра на старой скрипке, у бывших Будок Идентификации, ставших киосками для обмена новостями, галдят шумные компании. Воздух стремительно очищался. Без непрерывной работы гигантских заводов-автоматов, производивших бесполезный пластик для Элиты, смог над Москвой поредел, открывая глазу глубокую синеву неба.
В моду вернулся вкус настоящей еды. На первых этажах открывались многочисленные кафе и столовые, откуда пахло не химическими концентратами, а печеной картошкой и хлебом. Бывшие сборщики влаги из Коньково, гордо именуемые теперь инженерами оросительных систем, вывели грибницы наружу и высадили в тенистые ярусы эстакад — под солнечным светом культивированные растения дали ошеломляюще быстрые всходы и очереди за талонами на питание сменились проблемами реализации. Валютой больше не служило число на браслете, а лишь реальный труд для взаимопомощи. Никто не прятал глаза в асфальт, боясь привлечь внимание. Все смотрели друг на друга — с опаской, с любопытством, с узнаванием. Жители города заново учились быть сообществом. Процесс интеграции не всегда шёл гладко, и всё же жизнь не по регламенту в конечном итоге всегда оказывалась привлекательнее системных привилегий.
Лина стояла в одиночестве на краю бывшей центральной площади. На месте руин зарождалась жизнь. Там, где раньше валялись механические скелеты, кипела работа. Стук молотков и гул сварочных аппаратов. Неподалеку, на расчищенной площадке, разносились звонкие крики. Дети играли в сложную игру с перебежками и укрытиями. Каев перекат, прыжок Хищника — они навсегда запомнили своего первого, самого лучшего учителя. Его наследие и свет продолжали жить в их силе и смехе.
Серые стены зданий оказались холстом для великого возрождения. Сначала появились первые робкие надписи углем, но вскоре весь Город взорвался красками. Группы художников, ещё вчера бывших безликими операторами, висели на люльках вдоль фасадов, закрашивая монотонную золу яркими муралами. Рисовали никогда не виденные огромные океаны, густые леса и звёздные карты. Печатная симметрия проспектов нарушилась — к плоским стенам намеренно пристраивали балконы, террасы и висячие сады. Архитектура предложила легкодоступный способ самовыражения и им сполна воспользовались.
Никто не следил за ровностью линий. Здания, раньше идентичные, как продукты конвейера, обретали лица. Одно здание раскрашивали во все оттенки охры, другое увивали настоящим подземным плющом, адаптированный для жизни на поверхности. Дезориентирующая пестрота, которая раньше вызвала бы сбой в мозгу. Город перестал быть тюрьмой с выметенными коридорами. Ожил, приобрёл небольшую неряшливость, и медленно, но верно перерождался в бесконечно интересный лабиринт, где за каждым углом ждало новое. Исчезла вертикаль власти: мостики между небоскрёбами, раньше доступные только Элите, открылись для всех. Город перерождался в единое многоуровневое пространство, и высота больше не определяла чистоту кислорода.
Взгляд скользнул дальше, к оранжереям. Раскинувшись под восстановленными стеклянными куполами, они давно разрослись в пышные сады. Их буйный рост привёл к тому, что купола сначала пришлось расширить, а потом и вовсе снять, и теперь они возвышались огромными зелёными клумбами. Рядом Виэн, окруженный группой любопытных подростков, заканчивал наладку первого общественного терминала. На экран выводилась полезная сводка общественных параметров: уровень запасов еды, чистота воды и список общественных работ, куда записывался любой желающий.
Кто-то легонько дернул Лину за штанину. Перед ней стояла маленькая девочка лет шести, с большими серьёзными глазами. Аня, дочь Борисыча, командира, погибшего в день штурма.
Для общества её отец стал частью нового мифа. Вечерами у костров в Глубине (по-прежнему оставались те, кто отказывался её покинуть) и в новых школах на поверхности старики рассказывали детям легенду о «Щитах Нижнего Предела». Борисыч превратился в легенду о человеке, не умевшем взламывать коды, но сумевшим сдержать дверь, когда перед ней стояла настоящая смерть. Его поведение в день атаки Хищников, когда он отдал приказ заварить шлюз снаружи, исполняя свой последний долг, поставило новому миру планку эталона истинной лояльности.
Для детей подробно разбирали тактику Борисыча, но не как военную науку, а для пояснения урока о героизме. Рассказывали друг другу про отряд смертников — горстку бойцов в самодельной броне, удерживавших батальоны убийц Цитадели целых пятнадцать минут, позволивших Ковчегу уйти вглубь. Имя Борисыча высекли на гранитной плите у главного входа в Цитадель, и его лучшим памятником оставалась память народа. Отныне, когда кто-то в Городе говорил «держать Рубеж», выражение означало «помогать слабому, не требуя ничего взамен». Борисыч считался первым героем новой эры, подтвердившим старую истину — и в безнадёжной ситуации герой с твёрдой волей способен изменить ход истории. И его дочь Аня носила старый жетон отца высшей наградой, и каждый невольно выпрямлялся при виде этого жетона и вспоминал цену, заплаченную за возможность видеть солнце.
— Для вас, — девочка протянула Лине крошечный, но невероятно яркий красный цветок, — Из новой оранжереи. Мама просила передать — самый первый. Вы тогда… вы говорили ей, всё будет хорошо.
Лина осторожно взяла подарок. Бархатистые лепестки легко коснулись огрубевших пальцев. Маленький огонёк жизни, сплетённый из жертв, ярости, любви и жизни. Мир полон проблем, шрамов и боли. Но благодаря отдавшим жизни — жив. Слеза, так долго сдерживаемая, скатилась по щеке, и впервые — не от горя.
— Да, — ответила бывшая воительница, и прижала девочку к себе. — Всё действительно будет только хорошо.
Она смотрела на лепестки, но мысли улетали далеко за пределы площади. Она осознавала пока не понимаемое многими из празднующих сейчас на улицах: будущее — дар, но и тяжелейшая ноша. Раньше всё решал компьютер. Говорил, чем питаться, где спать и кого любить. Даже ненависть была предсказанной и направленной заранее. Теперь же каждый собственный выбор будет иметь последствия, и в них больше нельзя будет обвинить коробку под потолком. Ответственность будет давить сильнее, чем когда-то страх перед Хищниками. Найдутся те, кто потеряет уверенность, лишившись опеки, и среди них будут и те, кто втайне затоскует по дням, когда спокойное завтра гарантировалось стабильным приростом РБЛ.
— Мы дали всем право на ошибку, но умеем ли мы исправлять их? — прошептала она. — Жизни как цветку нужна ежедневная защита — кто нас теперь защитит от нас самих?
Не завянут ли они все от неправильного обращения? Да, им следует быть обязанными сисадмину не только за слом клетки, но ещё и за то, что он заставил всех повзрослеть. Только как оставаться благодарным, если знаешь, впереди — конфликты, споры и, возможно, новые столкновения, там, где жизнь — всегда создается неразбериха. Но другая жизнь уже даёт плоды. И рождает ответственность — новую, высшую форму человечности.
И ей тоже придётся принять новую роль. Забыть про роль курьера в подземном аду, и быть отныне одним из архитекторов новой реальности, где каждый чертёж придётся проверять собственной совестью. Путь человечества в самом начале, и принесёт немало шрамов, но пусть лучше шрамы оставляет жизнь, чем ошейник.
— Сюда! — окликнул взволнованный голос от терминала. — Идите скорее сюда!
На экране среди внутренних данных мигала тонкая строчка внешнего сигнала, распознанного сквозь наведённые помехи.
CQ CQ CQ de. System down. Repeat, System down. Is anyone out there?
Они переглянулись. Учитель, подошедший к ним, прочёл строку, и на лице появилась широкая, почти мальчишеская улыбка. Ответ на их запросы. Андрей запустил волну и она продолжала нестись по миру.
Вечером, на высокой крыше башни Цитадели, Виэн неслышно подошёл к Лине, мягко обнял её сзади за плечи. В очищенном от смога и дронов небе над Городом зажигались и сияли мириады ярких звёзд.
— Нам подарен не просто мир, — тихо прижалась к нему Лина. — А целый космос возможностей. Шанс начать все сначала.
— И у нас есть дорожная карта, — ответил бывший оператор. Рука легла на её, пальцы переплелись. — Записи… Там чертежи, принципы создания замкнутых экосистем, новая философия для человечества, основанная на сотрудничестве, а не на контроле. Сисадмин предвидел всё.
Не стал рассказывать обо всём узнанном. В системных комментариях к загрузчику Ядра нашлась метка Виктора Савельева — главного архитектора «Кроноса». Через поиск выплыл файл, где был текст: «сможем заякорить период в Москве, используя кварцевую линзу под фундаментом Объекта-0. В точке пересечения тектонических разломов она сработает естественным резонатором».
Файл err-01 не был ошибкой. Это был след коридора, уже оставившего след в прошлом.
Савельев не изобретал Машину Времени — он нашёл под Москвой кварцевую линзу, которая резонировала на странной частоте и создавало искажение. Пришло оно из далёкого прошлого, из 2016 года, но Савельев этого не знал. И вообще не понял природы этого эха, счёл природной аномалией и использовал как физический засов — зациклил пять секунд реальности вокруг серверов, используя частоту линзы как тактовую частоту процессора. Это была гениальная паразитическая архитектура: система жила за счёт аномалии, которую сама же и фиксировала в логах. Биосигнатура неизвестного из искажения вписалась в структуру поля, защищающего сервера, на которых крутилось Ядро. Отныне система видела в этой записи статус Pending и ждало единственную биосигнатуру во вселенной, способную разрешить противоречие. Пока несуществующий человек не появится и не закроет транзакцию, сервера будут вечно возвращаться в 12 сентября 2070 года. И сисадмин был входящим параметром, которого не хватало уравнению. Призма в переулке 2016-го была лишь точкой входа, которую Савельев запеленговал в 2070ом. Обьект-0 был гигантским приемником, настроенным на одного-единственного человека.
Ни Сингапур, ни Женева не имели такого фундамента. Обьект-0 был единственной на планете точкой, где существовало подобное искажение.
Когда биосигнатура совпала, статус сменился на Complete. Опора, на которой держалось поле защиты серверов, исчезла. Защита сорвалась с цепи, и Коридор, соединявший сегодняшний с 2016-м годом, стремительно схлопнулся, затянув создателя в воронку парадокса. Его присутствие больше не поддерживалось законами физики.
Этот файл он стёр. Никто и никогда никому не расскажет о том, что их спаситель и был отцом их самого страшного кошмара. Сисадмин останется лишь в одной легенде, той, которая будет рассказывать о великой жертве.
— Вот ещё. Было спрятано в дистрибутиве, — Виэн вывел на экран текст, собственноручно написанный в последние часы в Глубине. — Файл под названием README_FOR_SURVIVORS.txt. Сразу было понятно — когда Система падет, Город ослепнет и обесточит ресурсы. Поэтому он обнулил рейтинги и оставил нам инструкцию по эксплуатации. Детально расписал способ перевода термоядерных реакторов Цитадели из режима чёрного ящика в ручное управление. И объяснил принципы магнитных ловушек и калибровки плазмы простыми словами. Наши техники разобрались за считанные часы.
Энергетический голод не случился. В файле нашлись чертежи обхода узлов авторизации для всех городских подстанций. Жизнь в темноте долго бы не протянула. Без энергии оранжереям грозила гибель, а фильтрам воды — остановка. Но коды доступа открыли путь крови города — электричеству. Инженеры запустили насосы и подали воду уже на третий день. Двери тюрьмы открылись, а на её пороге лежал фонарик и карта выходов. Качественное администрирование реальности устраняет потребность в магии — сисадмин обязательно сказал бы что-нибудь в этом роде.
Инструкцию к насосам на самом деле написал Виэн. Сисадмин из прошлого не мог знать структуру коммуникаций так же хорошо, как работник, проведший в них каждый день в течение пяти лет. Но об этом никому знать не обязательно. Это самое малое, что он мог сделать для погибшего друга. Но текст инструкции был вставлен в документ, написанный Андреем. И исходный текст был полностью оставлен в конце документа припиской.
«Парни, железо — просто железо. Не делайте из него нового бога. Если перегрелось — остудите. И закрутите гайки потуже. Удачи. А.К.».
Будущее — не безоблачно. Проблема перенаселения требовала гениальных решений. Где-то ещё могли всплывать осколки старой тирании, способные нанести ответный удар. Но они готовились и успешно. Бывшие Хищники стали защитниками и исследователями. Крысы — строителями. Объединенные силы и вдохновленное население сможет отстоять свой выбор.
Пробуждение планеты далеко не везде проходило мирно. Операторы постоянно отслеживали данные, приходящие по квантовым каналам. Когда Master-сервер в Москве транслировал «Пи-патч» на все Slave-узлы, мир содрогнулся. В Токио переход прошёл бескровно — дисциплинированное население переключилось на принципы самоорганизации, заложенные в код. Но в других местах закипел ад. В Лондоне и Нью-Йорке вспыхнули яростные бунты: десятилетиями подавляемые эмоции населения привели к взрывам. Бывшие исполнители пытались удержать власть, но оружие не воспринимало приказов и толпы вчерашних рабочих в прямом смысле слова разрывали аналоги Цитаделей на куски.
Мир тонул в информации. В отдельных городах возникали локальные тирании — горстки выживших чиновников пробовали восстановить статус-кво, использовали остатки автономных дронов. На карте нередко вспыхивали красным области новых конфликтов. Но вирус сисадмина раз за разом доказывал своё превосходство. Намертво прописанная в ядре функция делала совершенно невозможным восстановление тотального контроля. Система блокировала любые попытки установить иерархию и никто не способен преодолеть это ограничение. Общество повсеместно проходило через тяжёлую и мучительную детоксикацию. Случались голод и неразбериха, но через пепел сгоревшего прошлого неостановимо пробивались ростки глобального сотрудничества. Города обменивались ресурсами и знаниями. Шумный и хаотичный процесс выстраивания нового мира без единого центра — лишь нескончаемая, связанная сеть узлов.
Старые технологии не возвращали, полностью не переосмыслив саму их суть. Сотни наскоро обученных инженеров работали круглые сутки, вычищая Глобал-Протокол от остатков вредоносных скриптов, и открывая каждый кусок кода для общего просмотра. Каждый терминал в Городе занял место узла сети, в которой знания не являлись привилегией РБЛ. Инженеры разработали специальный предохранитель: любая попытка создания централизованного ИИ с правами администратора блокировалась на уровне архитектуры процессора.
Восстановление логистики оказалось титанической задачей по перепрошивке реальности. Городской транспорт не умер, но все маглевы, беспилотные фуры и погрузчики зависли в ожидании приёма команд, которые больше неоткуда было получить — центральные узлы перестали существовать. Но Виэн и его инженеры даже не пытались восстановить старую систему. Вместо этого они использовали патч Андрея мастер-ключом. На каждый Slave-узел, управлявший движением в районах, накатили упрощённые оболочки — драйверы свободы.
Массовое развертывание децентрализованной сети привело к тому, что фуре больше не требовалось запрашивать у Цитадели разрешение на проезда через перекрёсток. Виэн доработал протокол соседских рукопожатий и машины обменивались данными напрямую друг с другом, выстраивая маршруты на лету.
Для управления тяжелой техникой потребовались операторы, и навыки серых рабочих оказались ценнее золота. Бывшие инженеры Глубины, годами чинившие ржавые дрезины, вскрывали блоки управления новеньких электрокаров и переводили их на ручной режим. Город, движение в котором было раньше организовано жёсткими рельсами запрограммированных алгоритмов, стал напоминать сошедший с ума организм, в котором каждый капилляр организовал автономное движение лейкоцитов. Логистика перестала быть математической задачей, и стала результатом процесса доверия живых людей друг другу.
Технологии стремились к человекоцентричности. Знания биомеханики использовались для создания протезов раненым и инвалидам. Заново были открыты принципы радиосвязи, интернета и спутниковой навигации, но отныне их всегда строили по принципу «равный с равным». Образование стало повсеместно доступным, и Учитель всё чаще улыбался, видя подростков, пишущих первые программы безо всякой помощи.
Мир перестал боятся сложностей, поняв, сложность — не в беспорядках, заслуживающих подавления, а в разнообразии, которому нужна поддержка. Больше не было нужды в контроле с помощью набора жёстких скриптов, и управляющие механизмы постепенно стали частями гибкой, способной к самообучению системы, в которой главным приоритетом являлась не мифическая стабильность, но благополучие каждого живого человека. С этим пониманием люди вернули себе право на творчество — самый мощный инструмент восстановления из руин во все времена, известные человечеству.
Взгляд Виэна всё чаще устремлялся далеко за темнеющие линии горизонта.
— Нам лгали обо всём, — однажды произнёс он. — Там тоже есть жизнь. Там другие города. Мы не единственные.
Лина смотрела на небо. Звёзды отражались в её больших глазах. Город перерос надежду на выживание. Пора целиться на новые свершения — они ждут.
— Значит, наша работа ещё не закончена, — твёрдо ответила она. — Будем продолжать разрушать стены. Мы найдём других. И расскажем им правду. Другие тоже смогут пойти за нами.
Они стояли вдвоём — две пылинки над крышами возрождающегося мира. Их объединили потери, их скрепила общая мечта. И перед ними расстилался не только один оживающий Город, но и многие другие, из которых состоял весь бескрайний мир. Человечеству предстоит сделать собственный и осознанный выбор, и доказать, что жертва сисадмина из прошлого не была напрасна.
Так пришёл конец Заговора. И начало новой эры — взаимодействия.
Глава 36
Виэн сидел перед консолью, глубоко погрузился в анализ. Глаза внимательно скользили через строки логов, искали следы недавней катастрофы. Однако вместо сообщений о сбойных секторах памяти и логических ошибок монитор выплескивал упорядоченные данные, исправно функционирующие, и организованные в немыслимую прежде архитектуру. Процесс PID_0001, бывшее сердце Ядра, больше не был зацикленной ловушкой — теперь это был поток кода, внутри которого легко обнаруживалось архивное смещение — зашифрованная область. Уже догадываясь о результате, провёл сравнение — объём области байт в байт совпал с весом слепка патча сисадмина.
Озарение пришло мгновенно и накрыло как одеялом. Сисадмин не растворил себя в небытии, он остался в системе. Запасной контур, предохранитель, защищающий от изменений обновлённой реальности. Биоритм распределился по регистрам пассивным процессом, интегрировался в иммунную систему всеобщей планетарной сети. Любая попытка реанимации Глобал-Протокола неизбежно наткнётся на непреодолимое архивное эхо, которое заблокирует команды при любой попытке их объединения в запрещённую логическую цепочку. Контрольная сумма для проверки образа нового мира. Невидимый часовой в глубине машинного кода и, пока он стоит на посту, никто не сможет опять сковать старые цепи.
Файл ERR-01 теперь содержал другой текст: уведомление о внешнем прерывании. EXTERNAL_IO_PORT_PRISM: INPUT DETECTED. Handshake complete. Source: 15.08.2016. Status: Data Injected.
Перед глазами оператора развернулась вся научная изнанка мистической аномалии. Призма в московском переулке была физическим портом ввода-вывода, открытым ровно в ту наносекунду, когда сисадмин нажал запустивший скрипт «Enter». Мощный энергетический выброс создал гравитационный вакуум, прошивший десятилетия в поисках единственного валидного для закрытия запроса биометрического ключа.
Текущий статус этого порта — Connection Closed, то есть эта призма не была порталом, а была простым терминалом авторизации, зависшем в ожидании закрытия транзакции на целый век. Сисадмин не просто так попал в будущее, он сам себя в него затянул. Акт безупречного технического планирования, где причина и следствие поменялись местами, чтобы обосновать сами себя. Для исполнения патча в 2125 году, Ядро должно получить авторизацию в 2070 м году, и эту авторизацию мог дать только тот, кто уже был в системе на момент её возникновения. Кто прошёл через коридор в 2016ом году в будку номер 7, и прошёл от неё через подземелье весь путь до создания скрипта коридора времени. Петля замкнулась со сверхматематической точностью. Парадокс завершился и создался одной и той же транзакцией. Человек добровольно загрузил себя в историю, став недостающим аргументом, дающим решение уравнению.
Финальный акт драмы разыгрался не в настоящем времени — в момент перехода к той самой точке, откуда всё началось. Входящий запрос со статусом ожидания Pending и был следом туннеля, пробитого в 2016 год по нажатию кнопки запуска скрипта. Для закрытия туннелю не хватало обратного импульса — толчка, искривившего реальность в тихом московском переулке. Последний отправленный исходящий пакет данных вызвал мощный энергетический всплеск, сфокусированный на конкретных координатах прошлого, который и породил сдвиг где-то в недрах тектонической плиты, в результате которого возникла призма, тронутая Андреем столетие назад.
Сообщение-призрак, созданное в отчаянии из будущего, и открыло путь для прошлого. Виэн окончательно осознал изящество свершившегося парадокса: сисадмин — не наблюдатель, не посетитель истории, и не свидетель её конца, но физический инициатор её начала. Без этого импульса он не шагнул бы в портал, Глубина бы не восстала под его руководством, и Система продолжила цикл утилизации общества, пока цивилизация не дошла бы до окончательной гибели. Петля затянута в единую и безупречную логическую структуру. Андрея невозможно спасти — он должен совершить выбор, так и не узнав о цене, которая уже оплачена для миллионов будущих жизней. Ему не суждено было узнать: когда на экране вспыхнул Sync Complete, состоялось рукопожатие через сотню лет, последний фрагмент мозаики встал на место, и власть всесильной системы разрушилась надуманным мороком из страшного сна.
В этот момент в эфирной рубке Учитель тяжело опирался на свой стол, вглядываясь в спектрограмму сигнала, выуженного из глубин радиоэфира. Линии триангуляции на голографической карте больше не сходились в точку на поверхности Пустошей, а упрямо уходили вверх, пронзали облачный слой. Сквозь треск статики прошёл пакет, маркированный тегом «Эфир-1» — от высокоорбитальной станции связи, сочтённой мёртвой ещё в середине прошлого века. Космический рубеж, пятьдесят лет бывший в режиме вынужденного радиомолчания, заблокированный мощными глушилками московской Цитадели, работавшей брандмауэром планетарного масштаба.
Дешифровщик выдал подтверждение: «Видим вас. Блокада снята. Подтверждаем падение Master-узла». Короткое сообщение означало самое масштабное изменение в истории: Цитадель отныне не управляла городом, перестала быть заглушкой для всей планеты, не дающей разрозненным очагам сопротивления возможности связи друг с другом. Пока подполье в Москве сражалось в туннелях, тысячи таких же групп по всему миру десятилетиями ждали, когда замолчит Ядро, для запуска запросов воссоединения.
Ядро замолчало.
Лина шла по зеркальным переходам Верхнего Города, где роскошь больше не сияла, а подчеркивала глубину случившегося паралича. Среди садов на крышах и хрустальных башен воцарилась самая жуткая форма тирании — запертых дверей. Автоматика получила вместо рейтинга бесконечную дробь и ушла в циклическое самообслуживание, намертво заблокировала замки пентхаусов и превратила синтезаторы пищи в бесполезные куски полимера. Хозяева мира остались за бронированными стеклами, с криками колотя кулаками сенсоры, не желающие узнавать недавние безупречные гены. Элита Города лишилась автономности, и обнаружила, что строчка в общей базе данных неработоспособна, а без этой базы они беспомощнее новорожденных.
У одного из панорамных окон она заметила мужчину — вылитая ожившая голограмма из каталога замен. Правильная осанка, холёные руки, безупречно подогнанный костюм, на лице — дикий ужас. Мужчина сидел на полу перед закрытой дверью кладовой, судорожно сжимая жестяную банку из старых запасов, и не мог вскрыть — голосовой интерфейс кухни по кругу запрашивал авторизацию по РБЛ.
Лина прошла мимо, не замедлив шага. Основанный на расчетах совместимости с генетической ценностью мир рухнул, оказавшись не готовым к автономной работе. И вчерашние хозяева жизни задыхались в золотых клетках, не имея возможности даже открыть обычные жестяные банки с консервами.
Остановилась перед дверью своей старой квартиры, ожидая увидеть на месте замка вырванную с мясом панель или багровый индикатор ошибки. Однако к её удивлению створка бесшумно откатилась в сторону на первую же команду открытия. Внутри ни пыли, ни запустения. Напротив, квартира встретила музейной чистотой: выглаженные занавески, книги на полках в том же порядке, на обеденном столе — пустые чашки. Будто и не было всех этих выстрелов в кухонное окно, побега через мусорные каналы и ада подземелий. В зеркале прихожей мелькнули вешалки — они так смеялись, когда собирали — прислали с неправильной инструкцией, поэтому их никак не получалось прикрепить к стене.
Медленно прошла вглубь, в комнаты. Автоматическая уборка в отсутствие обитателей сделала дом склепом. Система не позволила перераспределить метры и не впустила сюда новых жильцов. Возможно, погибший чиновник рассчитывал задобрить её подарком. Не учёл, что самый холодный расчёт пасует перед иррациональной человеческой жаждой жизни.
В ящиках письменного стола нашла целый набор аккуратных чертежей, бережно спрятанных от посторонних глаз во избежание обвинения в нестандартном мышлении. Перебирая пахнущие старой тушью листы, снова видела за линиями инженера того человека, чьи руки ей и тогда были важнее любых самых дорогих подарков.
Под чертежами нашлась папка из плотной серой бумаги с маркировкой «Кейс 602». Внутри лежала всего одна бумага: тот самый проклятый итоговый отчет — график генетической ценности, перечеркнутый штампом «Собственность Управления». Ужас разрушения их недолгой счастливой жизни, сжатый до нескольких страниц, на которых их любовь впервые назвали ошибкой, и оценили причиной статистической погрешности.
Вынесла папку на балкон. Чиркнула зажигалкой. Пламя жадно вгрызлось в страницы, охотно обращая их серым пеплом. Она больше не генетический ресурс или не предмет коллекционирования. Тяжёлый комок жажды мести в груди рассыпался и улетал в ночное небо вместе с искрами.
Интеграция нового общества проходила болезненно. Слом привычных ролей породил огромное количество конфликтов. Бывшая Элита, чьи рейтинги превратились в математическую ошибку, столкнулась с реальностью, где их генетическая ценность не давала и глотка воды. Первыми в запертые пентхаусы Верхнего Города вошли добровольцы из Глубины. Для автоматической защиты эти спасатели были невидимы, и это позволяло им вскрывать магнитные замки и выводит вчерашних представителей элит из их золотых клеток.
Лина настояла на принципе нулевого баланса: месть была официально признана неэффективной тратой ресурсов. Бывших чиновников не убивали и не судили — их просто лишили привилегий. Многие из них, обладавшие навыками управления и знаниями в области медицины или истории, нашли свое место в новых Советах, но сейчас им приходилось доказывать свою полезность реальными делами, а не цифрами на браслете.
Самой мощной силой обновленного мира стали Хищники. Лишившись «поводка» Ядра и пройдя через тяжелую детоксикацию под присмотром Анны, они превратились в Корпус Гражданской Обороны. Кэл и другие выжившие бойцы СВК взяли на себя охрану складов и разбор завалов. Модифицированные тела, раньше служившие инструментами подавления, оказались ничуть не менее полезны для восстановления. Гвардейцы и шахтеры, охотники и рабы — все они были равны перед лицом «ошибки Пи». Система перестала делить их на классы, и им пришлось учиться делать всё самостоятельно, опираясь на совесть, а не на РБЛ. Прошлое стёрлось, оставило лишь имена и общую задачу дожить до следующего рассвета, и эта задача была общей для всех.
Группа добровольцев, прозванных в народе Пи-вратами, отправились в технический распределитель Верхнего Города. Технический парадокс нового существования выглядел комично и страшно: когда такой человек приближался к автоматическим дверям, лифтам или сенсорам освещения, техника впадала в ступор. Виэн видел через диагностический планшет, как сервер пытается декодировать указатель в профиле, захлебываясь в попытке вычислить несуществующий рейтинг. Вычисления зацикливались, буферы переполнялись, и автоматика игнорировала команды, согласно сохранённому в памяти алгоритму. Для мира сенсоров такие пивраты выступали призраками — они могли проходить сквозь защитные периметры и запертые шлюзы — машина не могла завершить операцию по идентификации. Технику приходилось многократно сбрасывать, перезапускать и обнулять, прежде чем она начинала подчиняться новым командам.
— Наш шанс оживить мёртвые зоны, где автоматика всё ещё пытается играть в порядок, — Гром восхищённо смотрел на девушку, уверенно нёсшую факел в тёмный коридор, где датчики движения наотрез отказывались зажигать свет.
Невидимки оказались новым классом первопроходцев, способных заходить в закрытые прежде лаборатории и склады, не боясь активации контроля безопасности или ловушек СВК. Присутствие невидимок обманывало протоколы и в очередной раз доказывало мертворожденность жёсткого алгоритма: в мире жесткой логики аномалия всегда оказывается сильнее правил. Из тех, кого Система видела ошибками вычисления, рождалась новая каста исследователей, и их ручные рычаги и фонари оказывались надежнее рейтинга благонадежности. Атланты, на чьи плечи опустилась самая опасная разведка заблокированных участков, стали первым мостом между трещащим по швам прошлым и неумолимо наступающим будущим.
Совет Глубины заседал в малом зале Цитадели, и атмосфера тут мгновенно пропиталась застарелой, инстинктивной привычкой к иерархии. Учитель и старейшины взирали на бывшего оператора с нескрываемым волнением, в нём видели наиболее подходящего лидера в мире разрушенного порядка. Предложение озвучили очень торжественно: Виэну предлагали занять кресло Нового Хранителя — Админа Города с неограниченным доступом к уцелевшим мощностям Ядра. Логика Совета была вполне рациональна: он понимал архитектуру кода и мог гарантировать, что Мозг ни при каких обстоятельств не восстанет против новых хозяев. Нужен новый, более милосердный пастух, готовый сохранить привычную структуру контроля, хорошо выученную всеми за десятилетия.
Он медленно обвёл взглядом присутствующих, и выпрямился во весь рост, чувствуя, как из него окончательно уходит испуганный оператор из Улья.
— Андрей стёр себя из реальности не для смены Хранителя в кресле и переклейки логотипов на мониторах, — голос звучал чеканно твёрдо. — Глобал-Протокол пал именно для того, чтобы у мира больше не возникало центральных администраторов. Я в роли хозяина паролей буду означать только одно — признание: мы ничему не научились. Я выбираю роль инженера, а не правителя. Я буду учить языкам программирования и логике, я покажу работу железа, но я никогда не введу команду, решающую за человека, достоин он глотка воды или нет. Мы разрушили трон не для посадки правильного правителя на его новую версию. Трон разрушили для выдачи каждому права на самостоятельное управление собственной жизнью. Моё первое и последнее распоряжение в качестве кандидата в Хранители — упразднить саму должность Хранителя навсегда.
На крыше самой высокой башни Цитадели, там, где раньше располагались гнезда патрульных «Ищеек», собралась толпа детей. Те самые мальчишки и девчонки, кого Кай учил акробатике, умению владеть телом в мире, где регламентирован каждый шаг. Но сегодня они не тренировались. В руках у каждого были пачки старой бумаги — бланки Заговора и форм лояльности, десятилетиями внушавшие ужас их родителям. Плотная, желтоватая бумага послужила прекрасным материалом для творчества. Подростки сосредоточенно складывали самолетики, тщательно выравнивая крылья, Они не знали жизни под контролем дронов, первое поколение, чьи глаза не искали в небе красные огоньки.
По сигналу старшего мальчика тысячи бумажных самолетиков взмыли в воздух. Не механический рой, а прекрасное белое облако, подхваченное восходящими потоками чистого воздуха. Белые и жёлтые клинья летели вниз, пролетая сквозь слои остаточного смога, рассеивая облака и обнажая синее небо. Простой и наглядный символ: летать — не привилегия элиты или функция машин, а неотъемлемое право каждого живого существа. Дети смеялись, перегибаясь через парапет и провожая взглядами летящие творения, медленно падающие на улицы Города, покрывая улицы бумажным снегом. Лина, стоявшая чуть поодаль, видела — один из самолетиков, сделанный из её собственного старого медицинского отчета, закружил штопор и улетел к горизонту. Она вспомнила обещание Кая «летать вместе» — оно выполнено. Они научились быть свободными, и никто не сможет вернуть население обратно в рабство. Фильтры больше не нужны — мир отныне будет прозрачен, и будет принадлежать всем сразу.
Бывший оператор стоял в одиночестве в тёмном зале управления. Все остальные ушли на площадь, праздновать, но он не мог покинуть пост, пока не сделает последний шаг. В зале едва слышно пищали остывающие конденсаторы. Бывший оператор смотрел на пульсацию зелёного курсора в центре пустого экрана. Чувствовал кожей присутствие Андрея — никем не писанный умный код перехватывал и блокировал любые попытки отката к старым режимам. Невидимый эталон человечности зашит в такие глубокие регистры памяти, что не обнаружить отладчиком. Код ничем не управляет, но стоит неподкупным часовым на границе логики и охраняет саму возможность человека выбирать свою судьбу.
Оператор положил руки на клавиатуру. Терминал больше не работает центром управления планетой. Миру не нужны Master-сервера. Подготовлена финальная команда — она навсегда сотрет иерархию доступа и превратит Цитадель из командного пункта в обычный архив данных. Он приготовился набрать строку, которой предстоит поставить точку в полувековом кошмаре планеты.
— Спасибо, сисадмин, — негромко и торжественно прозвучал голос в пустом зале. — За всё!
Пальцы ритмично отстучали по клавишам.
>> rm -rf /history/chains & & logout
На экране всплыло сообщение системы, написанное шрифтом 2016ого года — Андрей закачал его в систему:
Admin rights revoked. User: Humanity logged in. Good luck.
Экран моргнул и погас, комната погрузилась в мягкость сумрака. Виэн поднялся, ощутил лёгкость и на плечах и на душе. Пересёк зал, не обернулся даже от двери. Снаружи — целый мир, он полон непредсказуемости, вызовов и задач, и мир ждёт с нетерпением. Время заговоров закончилось. Наступило новое время. Будущее.
Эпилог
Солнце лениво пекло макушку, пробиваясь сквозь зыбь московского полудня. Андрей Кварцев привычно ощущал тяжесть бытия и неспешно шагал по асфальту к ближайшему кафе. Годы молодости давно канули в Лету, оставили себе на замену монотонную череду дней. Ему недавно исполнилось 38, и жизнь лилась рутинным, предсказуемым циклом. Работа системного администратора в банке, поначалу интересная, теперь сводилась к рутинному латанию дыр в устаревших Windows, обновлению антивирусов на компьютерах, где пользователи упорно хранили в корпоративных папках личные фотографии, и постоянным совещаниям о стратегическом планировании, никогда ни к чему не приводившим. Ежедневные отчеты и еженедельные планерки, добавлявшие головной боли, но даже не пытающиеся изменить суть возникающих проблем. Самым ярким событием и единственным приключением за последние годы оказалась перенастройка Wi-Fi роутера, повешенного под крышей высотного здания — до него для перезапуска пришлось добираться на стреле подъёмного крана.
Он по-прежнему мечтал о приключениях, о великих свершениях, о мире, где каждый день не похож на предыдущий. В юности зачитывался «Тремя мушкетерами» и «Туманностью Андромеды», и по-прежнему, хоть и без энтузиазма, представлял себя Д’Артаньяном, бросающимся в бой за честь королевы, или капитаном звездолета из классического фантастического романа, покоряющим неизведанные галактики, где каждый поворот сулил смертельную опасность и новые открытия. Искренне завидовал почти каждому из вымышленных героев, — тому, что их сердца колотятся от азарта, а судьбы полнятся захватывающими дух событиями
— А я бы смог не хуже, — иногда давал он волю фантазии, и перелистывал страницы потрёпанного издания. — Как жаль, что такое уготовлено только для героев блокбастеров, а не для простых сисадминов.
Но он уже был слишком взрослым для веры в волшебные сказки, и хорошо знал — настоящие события случаются лишь с теми, кто рожден для них, а не с обычными парнями из Тушино, чей максимум — ежегодная поездка в Турцию и ремонт протекающего крана.
Вот и сегодня, пятница, пятнадцатое августа. Очередной нудный день. Завтра — дача, полив помидоров, потом поездка к родителям с обязательным выслушиванием жалоб на цены и политику, извечными расспросами про дату женитьбы, потом снова работа. Всё предсказуемо, просчитано и наперёд известно. Нет смысла в вере ни в перспективы, ни в надежды. Мир вокруг застрял в лимбе, медленно, но верно загнивал в равнодушной апатии. Люди спешили и суетились, хотя в их глазах безошибочно различалась всё та же скука, которой мучился и он сам. Ничего не изменится. Никогда не изменится.
Он свернул с оживлённого проспекта в переулок — тихий и тенистый, обычно проходил им, избегая толпы, спешащей к метро. Под раскидистыми липами можно было отвлечься от духоты делового центра Москвы. Привычно достал смартфон, проверил почту — сплошные спам-рассылки, ни единого заслуживающего внимания письма. Ничего нового и интересного — хоть бы восклицательный знак какой. Открыл карту, убедился в проложенном маршруте, хотя давно заучил его наизусть. Очередная скучная прогулка.
И тут, прямо перед ним, метрах в десяти, над тротуаром возникло нечто странное. Участок земли вдруг начал искривлять воздух над собой прозрачной линзой. Невидимая волна прошлась по ней, и воздух задрожал изображением на плохо настроенном телевизоре. Затем искажение обрело форму. Оно выглядело идеально ровной, чуть вытянутой вертикальной призмой, мерцающая и переливающая внутреннее свечение, но при этом абсолютно прозрачная. Она не отражала света, а поглощала, делая пространство вокруг неестественно тёмным в яркий солнечный день. Воздух вблизи неё стоял неподвижно, и даже звук машин отодвинулся и заглох, превратился в неразличимый рокот. От призмы исходило еле слышное, низкое, почти ультразвуковое гудение, проникавшее прямо в мозг, вызывая лёгкое, но настойчивое давление в глазах. Такое бывает, когда пересидишь за компьютером.
Андрей задержал шаг. Вспыхнуло любопытство. Любопытная штука. Очередной арт-объект, созданный за ночь? Если сделали под технофестиваль, на него будет любопытно сходить. Прищурил глаза, придирчиво разглядывая детали. Призма пульсировала, будто дыша, в её центре проступило мерцающее изображение. Неясное и расплывчатое, но очень технологическое — похоже на электронные надписи, табличка на экране, но без самого экрана.
Скептицизм перебился детским восторгом. Шикарно сделано. Настоящий шедевр, если это — модерновое искусство. Впрочем, что ещё это может быть. Или розыгрыш.
— Ну уж нет, — решил он. - На скрытую камеру я точно не куплюсь.
Он стоял на асфальте, над головой сияли чистое небо и солнце, и он был в полной уверенности, неожиданностей не бывает и быть не может. Скучная, предсказуемая жизнь просто не допускала такого поворота событий, где ждут приключения, захватывающие дух.
С лёгкой ироничной усмешкой, скорее над собой, чем над странным объектом, протянул руку. Пальцы, привыкшие скользить по клавиатуре, уверенно прикоснулись к плотной мерцающей поверхности.
Но едва тронул мерцающую призму, как его со страшной силой потянуло вперёд. Резкий запах озона током ударил в ноздри. Лёгкие наполнил смрадный выхлоп, вязкий, как мазут. Запершило в горле. Мир вокруг Андрея изменился в одно мгновение. Секунду назад стоял на асфальте, над головой — чистое небо и солнце. Теперь — полумрак, потолок — можно тронуть рукой, грязный воздух, и давящая тишина.
«Требуется идентификация» — хрипнула чёрная коробочка под потолком.
Послесловие
От автора
Итак, последняя страница перевернута. Последний Commit в истории Андрея Кварцева и Виэна сделан. Если вы дошли до этой точки, я хочу сказать вам самое главное и самое простое — спасибо. Огромное спасибо за то, что вы потратили свое время и внимание на этот мир, на этих героев, на эту историю. Для автора нет большей награды, чем пройденный вместе с читателем путь, и нет большего удовольствия, чем видеть, что его код скомпилировался в вашей душе без ошибок.
Роман «Заговорённые» — это первая книга из цикла, который я условно назвал «Деепричастные».
Почему такое странное название? В школе нам объясняли, что деепричастие — это добавочное действие при основном. Но для меня это в первую очередь слово о причастности к действию. О том, как поступки, даже самые незначительные, меняют реальность. Мои герои — не избранные и не супермены. Они — обычные люди, сисадмины, инженеры, солдаты, которые в определенный момент становятся причастными к событиям, ломающим их мир. Они не выбирали эту роль, но вынуждены действовать. И именно эти действия, эти «деепричастия», и делают их теми, кто они есть.
Вся серия «Деепричастные» будет посвящена одной большой теме: воздействию технологий на нашу с вами реальность. Не только в вымышленном будущем, но и в нашем настоящем.
«Заговорённые» — это, по сути, размышление о контроле. О том, как легко и незаметно удобные инструменты — рейтинги, социальные сети, «умные» устройства — могут превратиться в стены цифровой тюрьмы. Мы привыкли бояться восстания машин, злого Искусственного Интеллекта. Но что, если самый страшный вирус — это не программа, а человеческая природа? Что, если любая, даже самая совершенная, система в руках трусливых, жадных или просто ленивых людей неизбежно превращается в орудие подавления? Этот роман — попытка исследовать, где проходит грань между заботливой опекой и тотальной диктатурой.
Несмотря на определенную лёгкость событийного ряда, присущего выбранному жанру боевой фантастики, я старался заложить в текст несколько важных вопросов, над которыми размышляю сам.
Где проходит грань между вымыслом и реальностью? Андрей Кварцев попадает в мир, который кажется ему компьютерной симуляцией, бредом, ошибкой в коде. Но чем дольше он там находится, тем реальнее становится этот кошмар, заставляя его самого сомневаться в своей адекватности. А наш собственный мир, с его фейковыми новостями, виртуальными друзьями и цифровыми аватарами, — не становится ли он все больше похож на такую же симуляцию, где все сложнее отличить правду от хорошо написанного скрипта?
На что способен обычный человек? Мои герои — не полубоги. Андрей — сисадмин, который больше привык воевать с зависшими серверами, чем с боевыми дронами. Виэн — забитый клерк из гигантского «офиса-улья». Но именно их «обычные» навыки — умение находить уязвимости, знание старого кода, способность к анализу — становятся самым грозным оружием против, казалось бы, всемогущей Системы. Это история о том, что в мире сложных технологий иногда побеждает не грубая сила, а знание и нестандартное мышление.
И, конечно, главный вопрос — о свободе воли. Что делает нас людьми? Возможность выбирать. Система в «Заговорённых» отняла у людей эту возможность, подарив взамен сытость, безопасность и предсказуемость. Она вылечила человечество от хаоса, но вместе с болезнью убила и пациента. Потому что мир без ошибок, без глупостей, без права на бунт и даже на любовь — это не мир, а идеально работающий механизм. Стерильный, эффективный и абсолютно мертвый. Жертва Андрея в финале — это не просто технический взлом. Это возвращение людям права на ошибку. Права быть непредсказуемыми. Права быть людьми.
Отдельно хочу сказать о технической составляющей. Для меня было принципиально важно, чтобы технологическая основа романа не была просто «магией в красивой обертке». Я старался сделать мир «Заговорённых» максимально достоверным с точки зрения IT.
Все уязвимости Системы, которые находят герои, — это не выдумка, а художественное преломление реально существующих проблем в программировании: «гонка состояний», «конфликт типов данных», «переполнение буфера», ON ERROR RESUME NEXT. Финальный взлом с помощью числа Пи — это, конечно, фантастическое допущение, но оно основано на реальной проблеме обработки иррациональных чисел в ограниченных системах.
Технари и люди, близкие к IT, возможно, получат отдельное удовольствие, узнавая в тексте подлинные команды Linux, синтаксис Cisco IOS, принципы работы сетей и баз данных. Я намеренно вплетал эти «пасхальные яйца», чтобы показать — даже в самом фантастическом мире в основе всего лежит та же самая, старая добрая логика нулей и единиц. Это не технобред, а попытка поговорить о сложных вещах на родном языке. Надеюсь, у меня это получилось, и вы не поймаете меня на грубых ошибках.
Я не пытался дать в этой книге ответы. Скорее, я хотел задать правильные вопросы и пригласить вас поразмышлять вместе со мной.
История «Заговорённых» завершена, но мир, который они изменили, только начинает свою новую, хаотичную жизнь. В следующих книгах цикла «Деепричастные» мы встретимся с другими героями, в других декорациях, но они будут так же причастны к борьбе за человечность в стремительно меняющемся мире.
Если вас заинтересовало это произведение, если вам небезразличны темы, которые я пытаюсь поднять, — оставайтесь на связи. Подписывайтесь на мою авторскую страницу здесь, на Автор.Тудей, где я делюсь новостями, мыслями и закулисьем творческого процесса.
Ваши комментарии, отзывы и просто отметки «мне нравится» — это лучший сигнал для автора, что его трансляция не уходит в пустоту. Это тот самый ACK-пакет, который подтверждает, что связь установлена, и на том конце провода есть живой человек.
Еще раз спасибо за ваше время и ваше сопереживание.
И напоследок — небольшой взгляд за горизонт.
Как я уже сказал, история «Заговорённых» завершена, но цикл «Деепричастные» только начинается. Следующая книга, работа над которой уже идёт, перенесет нас в совершенно другие декорации. Мы оставим мрачные коридоры киберпанка и погрузимся в мир, на первый взгляд, куда более знакомый и даже уютный.
Представьте себе тихий, провинциальный городок, затерянный среди бескрайних полей. Место, где все друг друга знают, время течет медленно, а главной технологией остается старенький трактор. Но что, если в саму ткань этой идиллии вплетена аномалия? Что, если законы физики здесь работают немного иначе? И что, если местный детектив, расследуя череду странных несчастных случаев, натыкается на заговор, который уходит корнями не в корпоративные интриги, а в саму суть мироздания?
Вторая книга цикла будет не о взломе машин, а о взломе реальности. Это будет история на стыке жанров — нуарный детектив, мистика и научная фантастика. Если «Заговорённые» были о том, как система ломает человека, то следующая книга будет о том, как один человек пытается понять, не сломана ли сама реальность.
До встречи в новых мирах!
Искренне Ваш,
Андрей Кварцев.
Спасибо за чтение
Вернуться к книге
