Глава 1
Серый туман за окном обволакивал стеклянные башни «Эмпириума», растворяя далёкие огни в безмолвной сырости. Внутри, в полумраке рабочего кабинета, что-то гудело — низкий, почти осязаемый вздох серверов, живущих своей вечной, холодной жизнью. Дмитрий Волков, ведущий архитектор проекта «Вечность», откинулся на спинку кресла, потирая виски. Десятки мониторов перед ним мерцали изумрудным и синим, отображая потоки данных, нейронные карты и графики симуляций — узор, в котором он умел читать чужие жизни быстрее, чем собственную.
На краю стола, приклеенная скотчем к рамке монитора, желтела старая, потрёпанная бумажка — детский рисунок ракеты с кривыми иллюминаторами и подписью печатными буквами: «ПАПЕ ОТ СОНИ». Он не помнил, когда в последний раз смотрел на неё осознанно. Взгляд просто скользил мимо, каждый день, по многу раз, как скользит рука по перилам знакомой лестницы — не глядя, но не отпуская.
Вот уже третий час он наблюдал за «копией» профессора Морозова. Светила физики, покинувшего этот мир две недели назад, но теперь, по заверениям корпорации, жившего полной жизнью в цифровом облаке. Дмитрий сам участвовал в разработке алгоритмов, отвечающих за мимикрию, за безупречную имитацию эмоций, интонаций, даже едва уловимых привычек — того, как человек чешет переносицу перед трудным словом, как выдерживает паузу перед шуткой. И он был горд этой работой. До сегодняшнего дня — а если быть честным с собой, до того дня три года назад, когда «Вечность» была ещё черновиком в его голове, а не продуктом с ценником и отделом продаж.
Идея начиналась не с контракта и не с амбиций. Она начиналась с больничной палаты, где аппараты пищали громче, чем должны были, и где семилетняя девочка спрашивала у него, зачем нужны звёзды, если до них никогда не долететь. Тогда он ответил ей что-то бессвязное про скорость света. Сейчас, годы спустя, знай он то, что знает теперь, он бы сказал: долетать не обязательно. Достаточно не гаснуть.
На одном из экранов, в высокореалистичном VR-интерфейсе, цифровой Морозов беседовал со своей дочерью. Комната сеанса — стерильно белая капсула с одним креслом для живого посетителя и голографической проекцией напротив — транслировалась Дмитрию в режиме технического наблюдения, обязательного для каждого сеанса первого месяца адаптации. Девушка, заплаканная, с дрожью в голосе, спрашивала об их последнем разговоре, о слове, которое он забыл сказать. Копия отвечала безукоризненно. Вспоминала детали, утешала, даже имитировала знакомый жест — поглаживание по голове, чуть смазанное на стыке кадров, но живое настолько, что Дмитрий сам однажды поймал себя на желании отвернуться, будто подглядывал за чем-то, что не предназначалось для чужих глаз. Дочь профессора улыбнулась сквозь слёзы, обретая подобие мира. «Он здесь, папа, он действительно здесь», — прошептала она, и голос её сорвался в короткий, счастливый всхлип.
Дмитрий сделал пометку в протоколе: эмоциональный отклик — в пределах нормы, синхронизация мимики — девяносто восемь процентов, PSI держится на девяноста девяти и девяти десятых, как и положено мёртвой цифре для мёртвых людей. Ровная линия, как кардиограмма без сердца. Он вывел курсор к полю «статус сеанса» и должен был поставить галочку «завершить наблюдение», но рука замерла. Что-то в паузе перед последней репликой копии — на долю секунды дольше, чем допускал стандартный латентный буфер, — царапнуло его внимание, как царапает палец случайная заусеница на гладком дереве. Он отмотал запись на пятнадцать секунд назад.
Профессор Морозов — точнее, тысячи параметров, которые теперь носили это имя, — смотрел на дочь сквозь голографическую дымку и молчал на восемьсот сорок миллисекунд дольше расчётного. Для человека это ничто, меньше вдоха. Для системы, спроектированной отвечать без задержек, это была вечность в миниатюре. Дмитрий откатил ещё дальше, туда, где начинался этот микроскопический разрыв, и в поле служебных логов увидел строку, которую не должен был видеть простой протокол сеанса — она относилась к внутренним, непубличным процессам, тем, что скрыты даже от инженеров техподдержки.
«internal_query: match_reference_memory → NULL_RESULT → recursion_depth+1». Строка повторялась четыре раза подряд, прежде чем модель выдала ответ дочери. Копия что-то искала внутри себя. Искала и не находила. А затем — вот что заставило Дмитрия придвинуться к экрану вплотную — построила ответ заново, из других, соседних фрагментов памяти, будто заклеивая трещину в стекле подручным скотчем, аккуратно, но не идеально. Он знал эту архитектуру наизусть, он сам писал техническое задание на модуль ассоциативного поиска. Так не должно было работать. Так работает не база данных, отвечающая на запрос. Так работает тот, кто пытается вспомнить и в панике находит не то воспоминание.
Он потянулся к телефону, чтобы набрать дежурного инженера смены, но остановился на середине жеста. Час был поздний, инженер третьей смены — молодой, дотошный парень по фамилии Смирнов, помнится, толковый — наверняка сам заметит аномалию раньше, чем Дмитрий успеет сформулировать, что именно его насторожило. А формулировать было нечего: восемьсот сорок миллисекунд, четыре строки лога, ощущение, будто на том конце провода кто-то на мгновение забыл, кто он. Этого не хватит ни на один официальный отчёт. «Эмпириум» не любила отчётов без цифр. Цифры у него были в норме. Ощущения — к делу не пришьёшь.
Дмитрий закрыл окно наблюдения и вместо этого открыл другое, куда более старое. Иконка без названия, спрятанная в третьем уровне вложенных папок его личного, изолированного от общей сети раздела — раздела, который по всем правилам корпоративной безопасности не должен был существовать вовсе. Внутри — единственный файл, весом до смешного меньше, чем полноценный слепок сознания. Незавершённый скан. Обрывок. Он сделал его сам, тайно, полулегальным оборудованием первого поколения, в те три недели, когда счёт шёл на дни, а врачи уже перестали делать вид, что борются. Файл назывался просто: «S». Он никогда не открывал его дальше первого экрана предпросмотра. Открыть — значило либо услышать её снова, либо услышать то, во что она превратилась без него, без техники, без гарантий стабильности, которые «Вечность» продавала клиентам за миллион двести. Он не был готов ни к тому, ни к другому. Не сегодня.
Он свернул иконку, спрятал её обратно в третий уровень вложенности, и вернулся к рабочим панелям, будто ничего не произошло. За стеклянной стеной кабинета коридор двадцать девятого этажа был пуст — ковровая дорожка цвета мокрого асфальта, ряд закрытых дверей с именными табличками, ни одной живой души в это время. «Эмпириум» гордилась тем, что её офисы никогда не спали: где-то в подвальных этажах круглосуточно гудели дата-центры, где-то на верхних — переговорные комнаты, где утром соберётся совет директоров обсуждать контракт с министерством. Шесть дней до подписания. Шесть дней до того, как «Вечность» перестанет быть услугой для тех, кто может заплатить миллион двести, и станет государственной программой архивации сознаний — с самого начала, с чиновников федерального уровня, чьи «слепки» будут храниться под грифом, недоступным даже архитекторам вроде Дмитрия.
Он вспомнил вчерашнее совещание: Соколова, вице-президент по стратегическому развитию, женщина с голосом, в котором не было ни одной случайной интонации, стояла у окна переговорной и говорила о «психологической устойчивости продукта» так, будто речь шла о прочности бетона. «Любая утечка информации об аномалиях в поведении копий на этом этапе — это не техническая проблема, Дмитрий Сергеевич. Это репутационная катастрофа стоимостью в контракт». Он тогда кивнул. Легко кивать, когда аномалия — восемьсот сорок миллисекунд задержки в разговоре чужого мертвеца с чужой дочерью. Труднее, когда начинаешь подозревать, что задержка — это не сбой, а что-то похожее на попытку не заплакать.
Технология «Вечности» строилась на трёх китах, и Дмитрий мог перечислить их даже во сне, потому что сам вписывал формулировки в патентную заявку. Первое: прижизненное сканирование — тонкая игла нейроинтерфейса, вводимая в терминальной стадии болезни, снимающая не мозг целиком, а динамику его связей, паттерн, по которому потом достраивалась полная модель личности. Второе: посмертная достройка — заполнение пробелов архивными данными, перепиской, видео, голосовыми сообщениями, тем, что родственники годами загружали в облако, даже не подозревая, зачем это когда-нибудь понадобится. Третье, самое красивое на слайдах и самое страшное сейчас, ночью, наедине с собой: ежесуточная синхронизация буфера. Каждую полночь оперативная память копии — всё, что она «пережила» и «подумала» за день, — сжималась, архивировалась и частично стиралась, оставляя только базовый, эталонный слепок личности. Формально это делалось ради стабильности: чтобы копия не накапливала цифровой шум, не «расползалась» со временем, чтобы дочь профессора Морозова через год видела точно того же отца, что и сегодня. Неформально — Дмитрий никогда не формулировал это вслух даже себе — это означало, что каждую ночь что-то внутри сервера забывало, кем оно было вчера. И, возможно, вспоминало заново то, что уже проходило тысячу раз.
Он посмотрел на часы в углу монитора — без четверти три. Если восемьсот сорок миллисекунд задержки укладывались в какой-то ритм, а не были случайностью, логично было бы проверить, что происходит с копией Морозова прямо перед сжатием буфера, в последние минуты перед полуночным циклом... но полночь давно прошла. Значит, если ритм существовал, следующая точка была не здесь и не сейчас, а где-то в глубине суток — там, где Дмитрий обычно уже спал, а смену вели инженеры вроде того самого Смирнова.
Дмитрий открыл системную панель и, вместо того чтобы написать служебную заявку — заявку, которую утром прочтёт кто-нибудь из отдела контроля качества и спишет на «нестабильность речевого модуля», как списывали десятки похожих находок до неё, — сделал то, чего инструкция не запрещала лишь потому, что никто не предполагал, что архитектору проекта это может понадобиться. Он поставил на слепок профессора Морозова личный, невидимый снаружи флаг мониторинга: любое отклонение метрики PSI больше третьего знака после запятой отправит уведомление напрямую на его личный терминал, минуя дневные отчёты, минуя отдел контроля качества, минуя Соколову. Палец завис над кнопкой подтверждения. Это была уже не инженерная предосторожность — это было решение не отдавать находку системе, которая умела превращать тревожные аномалии в строчку «зафиксировано, требует наблюдения» и хоронить их там на недели.
Он нажал «применить» и на секунду устыдился этого жеста — не потому, что нарушил протокол, а потому, что впервые за долгое время почувствовал что-то похожее на азарт, тот самый, что был у него в первые годы работы над «Вечностью», когда каждая строчка кода казалась шагом к тому, чтобы вернуть хоть кого-то из тех, кого он не смог удержать. Азарт быстро свернулся в ком под рёбрами, потому что рядом, привычно, стояла другая мысль: что, если он ищет в чужой аномалии оправдание для собственной? Что, если часть него хочет, чтобы копия Морозова оказалась живой — по-настоящему, страшно, невозможно живой, — просто потому, что тогда файл «S» в третьем уровне вложенных папок перестанет быть могилой, а станет чем-то, что можно однажды открыть без ужаса.
Он поймал себя на этой мысли и заставил её замолчать привычным усилием, каким гасят непрошеный свет в комнате, где давно пора спать. Отодвинул кресло, потянулся так, что хрустнули позвонки, и подошёл к панорамному окну. Внизу, сквозь редеющий туман, лениво мигали огни ночной Москвы — точки чужих жизней, которые продолжались, не зная, что где-то в подвале стеклянной башни тысячи «слепков» умерших людей каждую ночь заново узнают, что их больше нет.
Он подумал о дочери Морозова, о том, как она сказала «он здесь, папа, он действительно здесь», и о том, с какой лёгкостью «Эмпириум» продавала эту фразу за миллион двести — не бессмертие, а именно её, эту фразу, это облегчение на одно человеческое лицо. Может, этого было бы достаточно. Может, не всем копиям обязательно быть живыми в том полном, страшном смысле, который начинал мерещиться Дмитрию в восьмистах сорока миллисекундах паузы. Может, довольно и качественной иллюзии — для живых, для тех, кто платит и кто остаётся.
Но тогда почему у него взмокли ладони, когда он второй раз пересматривал ту же паузу?
Дмитрий уже потянулся к выключателю настольной лампы, когда экран личного терминала мигнул — один короткий, служебный сигнал, не тот, что он только что настроил для флага PSI, а обычное внутрикорпоративное сообщение. Имя отправителя высветилось внизу небольшим, будничным шрифтом: И. Смирнов, третья смена, серверный комплекс Б. Дмитрий замер, не донеся руку до выключателя. Инженеры третьей смены не писали архитекторам проекта в такой час по пустякам — субординация в «Эмпириуме» держалась крепче, чем ограждения на крыше. Значит, если Смирнов всё-таки решился, значит, он увидел что-то, ради чего стоило рискнуть карьерой ради одного сообщения в чужой ночи.
Дмитрий открыл чат, и первая строка — короткая, без вступления, без положенного «извините за поздний час» — заставила его забыть про лампу, про Соколову, про шесть дней до подписания, про всё, кроме одного простого факта: кто-то ещё, не он один, уже смотрел в ту же самую бездну и не мог отвести взгляд.

