Баг
Лифт застрял между двенадцатым и четырнадцатым этажами третий раз за ночь, и Павел наконец понял — это не сбой. Это закономерность.
Он откинулся в кресле. Октябрьский дождь прошивал стекло диагональными строками. В полупустом офисе горели только мониторы и аварийное освещение. На футболке расползалось кофейное пятно — точно по центру груди, как мишень.
На экране мигнули логи:
[23:47:13] ELEVATOR_SYSTEM: Request to FLOOR_13
[ERROR] Floor does not exist in building schema
[23:47:13] ELEVATOR_SYSTEM: Arriving at FLOOR_13
Павел нахмурился. Открыл консоль, повторил запрос:
[23:47:13] Accessing FLOOR_13
[ERROR] Floor does not exist
[23:47:13] Welcome to FLOOR_13
В воздухе появился запах — как от перегретой проводки, но слаще. Лифт дёрнулся. На табло цифры мигали: 12… 14… 12… И между ними, словно выжженная на сетчатке, проступила бледная 13.
Павел уставился в экран. Строки в терминале отставали от курсора на долю секунды — как будто сама реальность начала тормозить. Он щёлкнул по рации:
— Приём, это Верховский с двенадцатого.
В ответ — статика, в которой угадывалась мелодия. Джаз, приглушённый и искажённый, словно играющий под толщей воды.
Между
Он знал код этой системы наизусть. Открыл сервисный доступ, обошёл защиту, провалился в командный интерфейс лифта.
elevator.override_safety()
elevator.manual_control = True
elevator.go_to_floor(13)
Enter.
Гул в шахте изменил тональность. Створки лифта дрогнули и приоткрылись. Из щели потянуло не холодом — пустотой. Той особенной пустотой, которая бывает в местах, где что-то должно быть, но его нет.
Павел вернулся к ноутбуку. На экране, без его участия, печатались новые строки:
USER_P_VERKHOVSKY: Access granted
Welcome to the party that never was
Лифт выдохнул металлом и маслом, раздвигая створки полностью. Кабина пустая, но воздух внутри дрожал, как над раскалённым асфальтом. Между 12 и 14 горела кнопка, которой не было минуту назад. Павел коснулся её — она оказалась тёплой и чуть влажной, словно её только что отпустила чья-то ладонь.
Кабина дёрнулась вниз, потом вверх, потом… вбок? В желудке всё перевернулось. Язык прилип к нёбу, сухой как плата без термопасты. Индикатор погас. Время растянулось и схлопнулось одновременно.
Двери раскрылись.
Праздник, которого не было
Холл в стиле ар-деко утопал в золотистом свете хрустальных люстр. Мужчины в смокингах, женщины в вечерних платьях. Бокалы шампанского. Джаз лился откуда-то из глубины пространства, чуть запаздывая, как звук в плохо синхронизированном видео.
Гости проходили сквозь Павла, не замечая. Их тени падали неправильно — не туда, куда должны были, а туда, куда хотели. Некоторые тени вообще не имели хозяев, скользили по стенам самостоятельно.
На стене — афиша: «Торжественное открытие бизнес-центра ВЕРТИКАЛЬ. 31 октября 2019 года». Буквы дрожали, если смотреть прямо, и застывали боковым зрением.
Павел достал телефон. Сеть ловила — невозможно, но факт. Поисковик выдал первой строкой: «Трагедия в день открытия: обрушение перекрытий на 13-м этаже БЦ «Вертикаль». Семеро погибших. Открытие отменено».
Он стоял посреди праздника, которого не было. Который был отменён. Который всё равно шёл.
Воздух становился плотнее. Запах озона смешивался с парфюмом и шампанским, создавая невозможную комбинацию — как если бы прошлое и настоящее пытались существовать в одной точке.
Телефон вздрогнул. На экране сами собой появлялись сообщения в корпоративном чате:
[SYSTEM]: Почему ты не танцуешь, Павел?
[SYSTEM]: Все ждут.
[SYSTEM]: Присоединяйся к нам.
В чёрном экране выключенного телевизора на стене он увидел себя — в смокинге, с бокалом, смеющегося. Отражение повернулось и посмотрело прямо на него.
Код
Лифт за спиной захлопнулся. Кнопка вызова исчезла, оставив чёрный прямоугольник обожжённого пластика. На барной стойке стоял его ноутбук — тот, который он точно оставил на двенадцатом этаже.
Экран светился. Код писал себя сам:
class Guest:
def __init__(self, name, death_date=None):
= name
self.death_date = death_date or «2019-10-31«
= «celebrating_forever«
pavel = Guest(«Pavel Verkhovsky», death_date=?)
Павел сел за ноутбук, пальцы сами легли на клавиатуру — мышечная память программиста.
— Покажи логи тринадцатого этажа.
[FLOOR_13: ACCESS REQUIRES INVITATION]
— Я администратор этой системы.
[YOU WERE ADMIN. TIME: PAST TENSE]
На экране открылось видео. Охранная камера, дата — через три дня от текущей. Полиция, скорая, оцепление. Его фото в новостной ленте: «Программист бесследно исчез в бизнес-центре».
Часы на стене показывали 23:47. Телефон — 03:15. Ноутбук — 19:25. Время расслоилось, как испорченный массив данных. Секундная стрелка на настенных часах двигалась против часовой, но минутная шла как положено.
[SYSTEM]: Время — это баг в коде реальности.
[SYSTEM]: Мы его исправили.
[SYSTEM]: Хочешь патч?
Его собственная тень отделилась от ног и поползла к барной стойке. Там она встала и налила себе виски из бутылки, которая была одновременно полной и пустой.
Лена
И тут он увидел её.
Лена. В изумрудном платье, которого он никогда не видел. Она кружилась в танце с партнёром, чьё лицо размывалось при попытке сфокусироваться. Она не должна была его видеть — но вдруг остановилась и повернулась прямо к нему.
— Павел? Ты всё-таки пришёл. Я так ждала.
Внутри всё оборвалось. Её голос. Настоящий. Живой.
— Лена? Но мы… мы познакомились в две тысячи двадцатом. В кофейне на Маросейке.
Она подошла ближе, протянула руку. От неё пахло яблоками и корицей — точно так же, как в их первое свидание. Которое было через год после этого вечера. Которого не было.
— О чём ты говоришь? Мы же договаривались встретиться на открытии. Ты обещал станцевать со мной. Обещал, что хотя бы сегодня забудешь о работе.
Телефон завибрировал. Сообщение от Лены, датированное 31.10.2019: «Паш, я уже здесь! Тринадцатый этаж, у бара. Не опаздывай! ❤️»
Следом — её селфи на фоне той самой афиши. В том самом платье. С бокалом шампанского, в котором отражался он сам — в смокинге, рядом с ней.
— Почему ты снова в этой ужасной футболке? — Лена коснулась пятна на его груди. Её пальцы были тёплыми. Реальными. — Ты же обещал…
В зеркале за баром Павел увидел их двоих — нарядных, счастливых, чокающихся бокалами. Его отражение обняло её и что-то прошептало на ухо. Она засмеялась — тем самым смехом, в который он влюбился год спустя. Или год назад. Или никогда.
Выбор
— Верховский! Павел! Отзовись!
Голос Михалыча прорвался сквозь джаз, как помехи сквозь чистый сигнал. Реальный голос из реального мира.
— Я здесь! На тринадцатом!
— Какой тринадцатый, твою мать? Тринадцатого этажа нет! Мы тебя третьи сутки ищем! Ты где?!
Третьи сутки? Павел посмотрел на свои руки — сквозь кожу просвечивал паркет. Он становился частью этого места. Или это место становилось частью его.
Потолок пошёл трещинами. Сквозь них пробивался холодный свет флуоресцентных ламп. Настоящий свет. Безжалостный и честный.
— Паш, — Лена взяла его за руку. Её прикосновение было единственным, что ещё держало его здесь. Или там. — Останься. Мы могли бы быть счастливы. Если бы ты тогда не выбрал дежурство вместо меня. Если бы пришёл на открытие. Если бы…
— Но этого не было. Мы не были знакомы в две тысячи девятнадцатом.
— В этой версии — не были, — она грустно улыбнулась. — Но есть версия, где ты сделал другой выбор. Где ты не сидел в офисе в ту ночь. Где обрушение случилось днём, когда здесь никого не было. Где мы прожили счастливую жизнь.
Лифт открылся сам. Внутри — два отражения.
Слева — коридор двенадцатого этажа. Михалыч с охраной, полицейские, санитары. Их фонари выжигали золотой свет зала, превращая праздник в блёклую декорацию.
Справа — продолжение вечера. Лена у барной стойки подняла бокал. Музыка звала танцевать. Тени обрели лица — коллеги, которых он знал, но которые умерли до того, как он устроился в компанию.
Павел стоял на границе. В левой руке — телефон с треснувшим экраном и сотней пропущенных. В правой — бокал шампанского, пузырьки в котором поднимались вниз.
— Выбирай, — прошептала Лена. — Реальность, где меня нет. Или возможность, где нет реальности.
Он сделал шаг.
Эпилог
Из системного лога БЦ «Вертикаль», 03.11.2023:
[ERROR] Temporal paradox detected
[LOG] User last seen: 31.10.2023
[LOG] User first seen: 31.10.2019
[STATUS] Schrödinger state confirmed
[NOTE] На 13 этаже иногда слышна музыка
[NOTE] Лифт больше не останавливается между этажами
[NOTE] Except when someone needs to choose
[SYSTEM] has stopped responding
[SYSTEM] Run anyway? [Y/N]
[SYSTEM] ▮
В кофейне на Маросейке бариста наливает американо для девушки в зелёном пальто. Она ждёт кого-то. Проверяет телефон. На экране — переписка с Павлом Верховским. Последнее сообщение отправлено три дня назад. Или четыре года назад. Временная метка пляшет: 31.10.2019 / 31.10.2023.
Дверь кофейни открывается. Входит мужчина. На нём мятая футболка с Бэтменом и кофейным пятном на груди. А может, строгий смокинг.
Зависит от того, под каким углом смотреть.