Лина Каси
Город отражений

Эпиграф

«Время не идёт вперёд. Оно просто ждёт, пока ты решишь, кто ты есть.»

Пролог

Стареваль не существует.

Его нет на картах, в расписаниях и в памяти тех, кто уезжал.

Поезд останавливается без объявления станции.

Двери открываются, и ветер врывается в вагоны, принося запах дождя и мокрой земли.

Никто не выходит – кроме неё.

Ася не помнит, почему выбрала этот билет.

Возможно, просто захотела выйти там, где кончаются линии расписания.

Сумка лёгкая, глаза усталые. Она идёт по платформе, а позади уже не слышно звука колёс.

Поезд исчезает, будто его и не было.

Вдалеке – вывеска, где буквы отсырели: СТАРЕВАЛЬ.

Под ними – часы без стрелок.

Акт I – Прибытие

Глава 1. Пустая станция

Поезд остановился без звука – будто не тормозил, а просто решил, что дальше идти незачем.

Ни толчка, ни скрежета – только едва слышное шипение, как выдох.

За окном – серое небо, дождь, похожий на стеклянную пыль, и вывеска на полуразвалившейся платформе:

СТАРЕВАЛЬ.

Буквы были выцвевшими, будто стёртыми временем, и казалось, что само название не написано, а шепчется.

Она сидела, не двигаясь.

Сначала думала – подождёт, пока кто-то выйдет первым.

Но никто не вышел.

Двое пассажиров – женщина с клетчатой сумкой и мальчик с игрушечным поездом – поднялись и растворились в тумане, будто шагнули не наружу, а в сон.

Ася осталась одна.

Поезд не трогался.

Даже машинист не выглянул из кабины.

Будто состав выдохся, добравшись сюда, и теперь ему дозволено умереть.

Металл вагонов дышал теплом.

Воздух пах ржавчиной, пылью и чем-то электрическим – запахом старой техники, которой уже не должно быть.

Когда Ася поднялась, свет моргнул.

На секунду в отражении окна мелькнуло лицо – то ли её собственное, то ли чужое.

Она моргнула, и отражение стало обычным.

Рюкзак тянул плечо – внутри ноутбук, термос и старая тетрадь с надписью:

“MirrorMind – черновики.”

Проект, который должен был исчезнуть вместе с её прошлой жизнью.

Но, как и всё, что связано с ней, – почти не исчез.

Она сошла на перрон.

Сначала показалось, что под ногами скрипит снег, но это были мелкие осколки стекла, впитавшие влагу.

Первый звук, который она услышала, – не дождь, а тикание.

Чёткое, ровное, будто кто-то держит часы прямо у уха.

Но вокруг – никого.

Только платформа, заросшая бурьяном.

Никаких указателей.

Никаких людей.

Даже собаки.

На стене висел старый плакат.

Буквы поблёкли, но всё ещё можно было разобрать:

«Всё имеет своё время».

Ася невольно усмехнулась.

– Даже выгорание, – сказала она.

И сразу пожалела.

Голос прозвучал неестественно – не здесь, а будто с другой стороны стекла.

Она шла вдоль дороги, ведущей к городу.

Рюкзак бил по спине, ботинки скользили в жидкой глине.

Дождь не прекращался, но и не усиливался – просто капал с одинаковым интервалом, как метроном.

Каждая капля падала с тем же ритмом, что бьётся сердце, когда пытаешься казаться спокойной.

Слева – море.

Вода неподвижна, будто покрыта тонким стеклом.

Ни волны, ни блика, ни шума.

Воздух солёный, вязкий.

И в нём – странная тишина, из которой будто вырезали всё живое.

Ася подумала: так выглядит мир, который никто не запустил.

Словно город кто-то создал, прописал текстуры, тени, даже дождь – но забыл добавить движение.

Программа без команды Run.

И сразу внутри – короткий импульс: это уже было.

Она думала это раньше.

Точно. Где-то. Когда-то.

Но память, как битый диск, не позволяла считать дальше.

Первое здание на пути – низкий дом с облупившейся вывеской:

ПАНСИОН “У АННЫ”.

Буквы дрожали под дождём, будто живые.

Дверь – приоткрыта.

Изнутри пахло сушёными травами, старой бумагой и немного – пеплом.

– Заходи, – сказала женщина, не поднимая глаз от книги.

Голос был ровный, уверенный, будто знала не только, кто пришёл, но и зачем.

– Вы Анна?

– А ты – Ася.

Она подняла взгляд.

Серые глаза, холодные, спокойные.

Не приветливые и не враждебные – просто существующие.

В них было то же ощущение остановленного времени, что и в городе за окном.

– Я писала заранее… насчёт комнаты.

– Я знаю. – Анна закрыла книгу. – Третий этаж, окно на море. Ключ под маятником.

У стены стояли старинные часы.

Маятник покачивался медленно, будто через силу.

Ася подняла ключ, машинально взглянула на циферблат.

10:07.

– Они идут? – спросила она.

– Иногда, – ответила Анна. – Но время здесь редко совпадает само с собой.

Комната оказалась просторной, но странной.

Мебель – почти новая, но покрыта тонкой пылью, как экспонаты, которых никто не трогал годами.

Окно выходило на серое море.

Горизонт терялся в тумане, и казалось, что вода переходит прямо в небо, без границы.

На подоконнике – чашка, в которой засох чай.

На стене – след от старой картины, как шрам.

Когда Ася подошла ближе, в окне мелькнуло отражение – человек, проходящий мимо.

Она резко обернулась.

Пусто.

Ни улицы, ни шагов, только дождь, стекающий по стеклу, как медленный код.

Шум в голове усилился.

Пульсация.

Кровь и дождь звучали одинаково.

Она достала ноутбук.

Пальцы чуть дрожали – то ли от холода, то ли от напряжения.

Экран загорелся мягким голубым светом.

Рабочий стол – почти пустой.

Один-единственный файл, хотя она точно знала: диск был отформатирован.

Имя файла – return.log.

Она открыла.

Три строки:

> Запуск памяти…

> Ошибка: отражение отсутствует.

> Время последнего запуска: 10:07

Курсор мигал.

Ритмично, настойчиво.

И через несколько секунд Ася поняла, что её сердце бьётся в том же ритме.

Глава 2. Ночь

В Старевале ночь не темнеет – она просто становится глубже.

Как будто свет не уходит, а утапливается в себе.

Море за окном светится бледно-зелёным, как старый монитор, у которого выключили питание, но пиксели ещё дышат остаточным током.

Ася лежала, не включая свет.

Её ноутбук на столе спал в том же режиме – крышка приоткрыта, экран чуть мерцает, будто прислушивается.

С потолка капала вода – ровно, монотонно, как такт метронома.

А часы под окном тикали вразнобой.

Иногда казалось, что маятник делает движение, но звук приходит на секунду позже.

Как будто время запаздывает за самим собой.

Она вспомнила, как в последние недели работы код в проекте начинал ломаться сам по себе.

Функции вызывали то, чего не существовало.

Файлы открывались пустыми, будто кто-то их уже прочитал раньше.

И всё чаще на экране появлялось:

RuntimeError: memory_overflow()

(Ошибка выполнения: переполнение памяти. Возможно, эмоциональной.)

Она усмехнулась – и сразу ощутила, как воздух в комнате дрогнул.

Не ветер, не сквозняк.

Будто кто-то рядом вдохнул.

Часы за окном тикнули громче.

Каждый удар звучал, как шаг по воде.

Ася перевернулась на бок.

Тишина.

Море стояло неподвижно.

Луна отражалась в нём ровно посередине – идеальная симметрия, но слишком идеальная, неестественная.

Как картинка, выровненная по сетке.

Она села и заметила – зеркало у двери едва заметно дрожит.

Будто в нём кто-то шепчет.

Она вспомнила первую ночь после увольнения.

Москва, январь, мониторный свет, обгоревший кофе.

Открытый код на экране, и эта строчка:

# TODO: find self()

(Найти себя.)

Тогда она смеялась.

Теперь – нет.

Мир вокруг казался написанным кем-то с её логикой, но без её души.

Алгоритм без автора.

Она закрыла глаза и услышала звон.

Тихий, как будто где-то на нижних этажах уронили ложку.

Но звон не стих – наоборот, приближался.

Становился всё тоньше, как звук натянутой струны, вот-вот готовой лопнуть.

Часы на стене ожили.

Стрелки пошли.

Медленно, неуверенно.

Потом быстрее, пока не начали вращаться, как пропеллер, без остановки.

Ася застыла.

Маятник ударялся о стенки корпуса с металлическим эхом, будто отбивал код Морзе.

>>> while (time == 10:07):

… loop()

(Пока время равно 10:07 – зациклиться.)

Стрелки внезапно остановились.

Точно в тот же момент зеркало у двери содрогнулось, как живая ткань.

Отражение качнулось.

На мгновение комната в зеркале опустела – не было ни кровати, ни неё.

Только окно.

И море.

А потом – всё вернулось, будто ничего не происходило.

Ася прижала ладонь к груди.

Сердце билось в том же ритме, что и мигавший курсор на экране ноутбука.

Она подошла к столу, подняла крышку.

Ноутбук проснулся.

Файл return.log снова был открыт – хотя она его закрывала.

Теперь в нём появилась четвёртая строчка:

> Reconnection attempt: success.

(Повторное подключение: успешно.)

Она не понимала, что это значит, но интуитивно знала – что-то теперь связано.

Между ней и этим местом.

Как будто город сам добавил её в систему.

Она посмотрела на окно – море больше не светилось.

Всё погасло.

Только часы снова начали тикать.

Их стрелки стояли на 10:07.

Глава 3. Утро

Утро в Старевале не начиналось – оно просто медленно проявлялось из серого, как старый негатив, погружённый в раствор.

Свет не приходил извне – он вытекал из стен, из воздуха, из самой тишины.

Ася спустилась вниз, когда маятник старых часов только начал двигаться.

Шаги отдавались странным эхом, будто дом был пуст, хотя запах чая и хлеба уже стоял в воздухе.

Анна поставила чай на стол.

Фарфор дрогнул, как будто чайник всё ещё дышал паром.

– Ты плохо спала, – сказала она, не спрашивая.

Ася слабо улыбнулась.

– Здесь слишком тихо.

– Здесь не "слишком". Здесь просто.

Голос Анны был как утренний туман – мягкий, но от него не скрыться.

Ася кивнула.

Отпила чай. Он был тёплый, но с металлическим послевкусием – как вода, стоявшая рядом с часами.

– Вы давно живёте здесь?

– Всегда.

Слово прозвучало просто, без акцента, но с такой уверенностью, будто в нём не было временной оси.

Ася пригляделась – лицо Анны не выражало ни возраста, ни усталости. Только присутствие.

– А город… он меняется?

Анна улыбнулась краем губ, но не ответила сразу.

Поставила чашку, посмотрела в окно.

– Нет. Он просто вспоминает себя заново.

Фраза осела внутри, как код, который компилируется без ошибок, но делает не то, что нужно.

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

> checking_state("self")

> status: unknown

(Проверка состояния "себя". Статус: неизвестен.)

На улице пахло морской солью и чем-то ещё – старой фотоплёнкой, химией проявителя, лёгким гниением.

Дождь не прекращался, но теперь капли падали редко, почти задумчиво, словно кто-то вручную расставлял их на стекле.

Море за городом казалось застеклённым.

Каждое движение отражалось дважды – и рефлексия, и тень.

Ася шла по узкой улице, выложенной камнем. Камни тёплые, хотя солнца не видно.

Каждый шаг отдавался в теле лёгким отзвуком, как если бы под ней был не камень, а тонкий слой воды.

У ближайшей лавки висела вывеска:

ФОТОГРАФИЯ. РЕМОНТ.

Буквы потускнели, но не осыпались. Они будто держались не краской, а воспоминанием о ней.

Изнутри доносился мягкий щелчок – звук затвора старой камеры.

Ася толкнула дверь. Колокольчик не звенел. Просто тишина сменила частоту.

Внутри – запах пыли, проявителя и старого дерева.

На стенах – фотографии. Чёрно-белые.

Все безликие. Или просто размытые.

Мужчина лет сорока стоял у окна, щурясь на свет.

На груди табличка: Лука.

– Снимки на документы? – спросил он, не отрывая взгляда от камеры.

– Нет… просто смотрю.

Он кивнул, как будто это обычный ответ.

– Здесь все приходят смотреть. Никто не уходит с фотографией.

Он улыбнулся.

Улыбка его была лёгкая, но будто не имела причины.

Ася сделала шаг назад, но Лука уже поднял камеру.

– Улыбнись.

Щелчок.

Вспышки не было, но мир дрогнул.

Тень от витрины дернулась, как будто от ветра.

– Готово, – сказал он. – Посмотришь позже.

Он поставил камеру на стойку, словно кадр уже где-то сохранился.

Ася почувствовала, что в момент снимка кто-то стоял за её спиной.

Она вышла, не оборачиваясь.

Мир за дверью был чуть светлее, чем прежде, но звуки – глуше.

Шаги отдавались с запаздыванием.

Её ботинки ударяли о камень, но эхо звучало позже – будто отражение шагало чуть позади.

> sync_error: reflection_delay_detected

(Ошибка синхронизации: отражение запаздывает.)

Она остановилась.

Посмотрела на витрину – в стекле всё совпадало.

Но в отражении глаза Луки за её спиной были открыты шире, чем у человека внутри лавки.

Дальше дорога вела к морю.

Старые дома шептали ветром, их ставни дрожали, как ресницы.

Изредка попадались прохожие – тихие, почти прозрачные, будто их собрали из того же тумана, что и свет.

Они не смотрели на Асю.

Но каждый, кто проходил мимо, чуть касался воздухом её плеча, как тень.

Она думала, что это усталость.

Посттравматический синдром после переутомления.

Всё объяснимо. Всё логично.

Но логика не собиралась запускаться.

> compile_life()

> Error: Unresolved reference: happiness

(Ошибка компиляции жизни. Неопределённая ссылка: счастье.)

Когда она вернулась в пансион, часы на стене снова показывали 10:07.

Анна сидела в кресле, как будто не двигалась с утра.

– Ты уже была в городе, – сказала она, не поднимая глаз.

– Да.

– Видела Луку?

– Да.

– Он сделал снимок?

Ася замерла.

– Да… откуда вы знаете?

Анна тихо улыбнулась.

– Потому что он делает их всем, кто ещё не решил, хочет ли остаться.

Глава 4. Код

Вечером туман уплотнился.

Он не поднимался с моря, а сползал с крыш, как мягкий, тёплый дым.

Мир стал матовым, как экран, на котором яркость убавили до нуля.

Ася сидела у окна.

На стекле – следы ладоней. Не её.

Слишком крупные, и отпечатки будто старые, давно засохшие.

Она провела пальцем по одной линии – и почувствовала холод.

Изнутри.

Часы на стене молчали.

Маятник застыл точно посередине, будто завис между “было” и “будет”.

На столе – ноутбук.

Она включила его.

Мигающий курсор загорелся, как зрачок.

Файла return.log больше не было.

На его месте – новый:

mirror.sys

Ася открыла его, ожидая увидеть код, но внутри был текст.

Не инструкции, не логи – а будто письмо.

Но написанное на её языке, языке машин и структур.

# MirrorMind v0.7

user: ASYA

status: not synchronized

error: second reflection detected

time: 10:07

Под этим – последняя строка, выделенная серым:

// DO NOT RUN AGAIN

(Не запускать повторно.)

Она смотрела на эти слова слишком долго, будто ждала, что текст изменится.

Или сам допишется.

В комнате становилось темнее, хотя лампа ещё горела.

Свет словно тонул в воздухе, не доходя до стен.

Ася поднялась и подошла к часам.

Маятник не двигался.

Пружина не натянута.

Но она отчётливо чувствовала: время дышит.

Как будто где-то под полом – механизм, огромный, скрытый, и каждый вдох тянет за собой город.

Она вернулась к ноутбуку.

Открыла консоль.

Руки дрожали, когда печатала:

> run("mirror.sys")

(Запустить “зеркальную систему”.)

Экран моргнул.

Секунду ничего не происходило.

Потом по экрану побежал текст, как будто кто-то отвечает ей в реальном времени:

sync attempt…

connecting to reflection…

error: user already exists

(Попытка синхронизации… Подключение к отражению… Ошибка: пользователь уже существует.)

Ася откинулась на спинку стула.

Сердце билось быстро, в унисон с курсором.

Она подумала, что, возможно, просто устала.

Что это сон.

Или шутка подсознания, которое нашло способ говорить с ней на понятном языке.

Но тогда – кто написал mirror.sys?

Она выключила ноутбук.

Свет погас.

Но экран – нет.

Он всё ещё светился слабым голубым, и в отражении матрицы – кто-то стоял за её спиной.

Сердце пропустило удар.

Она резко обернулась – комната пуста.

Вернулась взглядом к экрану – отражение исчезло.

Только курсор мигал в пустоте.

> self = undefined

(Переменная “я” не определена.)

Позже, когда она попыталась заснуть, за стеной послышался слабый стук.

Ритмичный, как набор клавиш.

Кто-то будто печатал.

Только – не в реальности, а в темноте.

Она прислушалась.

Стук совпадал с её мыслями.

Каждый раз, когда она думала слово, где-то – его повторяли.

"mirror.sys"

"mirror.sys"

Гулкий шёпот шёл из глубины здания, из пола, из стен.

Дом звучал, как серверная комната – где-то работали вентиляторы, мигают светодиоды, а воздух дрожит от скрытой жизни.

Ася встала.

Открыла ноутбук снова.

Теперь в директории появился ещё один файл:

mirror.tmp

Она открыла его.

Внутри – фрагменты текста, бессвязные, словно запись сна:

you left but never arrived

time stopped to remember you

the second image wants to wake

(ты ушла, но так и не пришла

время остановилось, чтобы вспомнить тебя

второе отражение хочет проснуться)

Сердце снова забилось в ритме.

Тот же пульс, тот же код.

Она почувствовала, как нечто изнутри словно откликается – как будто отражение пытается синхронизироваться.

> sync_reflection("ASYA")

> result: partial success

(Синхронизация отражения “АСЯ”… результат: частично успешно.)

Она подняла глаза – и впервые заметила, что окно стало зеркалом.

Снаружи – ночь, но свет не проникал внутрь, он отражался.

И там, в глубине стекла, стояла она.

Но без движения.

Без дыхания.

Отражение улыбнулось – медленно, чуть раньше, чем она.

И в этот момент часы зазвенели.

Не тик – именно звон, протяжный, металлический, как сигнал тревоги.

Маятник дёрнулся.

На циферблате – 10:07.

Анна постучала в дверь.

– Ты слышала? – тихо спросила она.

– Что?

– Звон. Когда зеркало открывается.

Ася не ответила.

Но внизу, у ноутбука, курсор продолжал мигать.

> mirror.ready()

> waiting for input…

(Зеркало готово. Ожидание ввода…)

Глава 5. Маятник

Ночью маятник снова качнулся.

Не резко – плавно, почти вежливо, как будто дом хотел убедиться, что она не спит.

Каждое движение звучало не как звук, а как дыхание – медленное, глубокое, ровное.

Ася лежала в темноте и впервые поняла: в Старевале темнота имеет направление.

Она не просто заполняет пространство – она движется.

Как дым, тянущийся к окну, словно что-то снаружи её зовёт.

За окном море было неподвижным зеркалом.

Но время от времени по воде проходила волна – тихая, как вздох, и в ней отражались тени, которых не было в комнате.

Она повернулась на бок, слушая, как маятник рассекает воздух.

Каждый взмах был отмерен чем-то большим, чем механизм.

Ей вдруг показалось, что маятник отбивает её пульс.

Или наоборот – сердце подстраивается под часы.

> sync_heartbeat(clock)

> status: synchronized

(Синхронизация пульса с часами… состояние: синхронизировано.)

Сон не приходил.

Тьма дышала всё ближе.

Иногда ей казалось, что дом делает вдох, когда она выдыхает.

На рассвете она спустилась вниз.

Анна уже была там – в той же позе, с той же книгой.

Платье не помялось, волосы не сдвинулись.

Как будто она не ложилась вовсе.

– Эти часы, – сказала Ася, кивая на корпус у стены. – Они… странные.

Анна подняла глаза.

– Они показывают не время, – сказала она спокойно. – А момент, когда человек впервые понял, зачем приехал.

– А если не понял?

– Тогда стрелки стоят.

Слова прозвучали просто, но в них было что-то от алгоритма – будто она зачитала фрагмент кода, уже встроенный в город.

Маятник качнулся.

Щелчок – тихий, глухой, будто в глубине деревянного корпуса кто-то сделал пометку карандашом: ещё одна попытка.

Время откликнулось, но не пошло.

День был вязким.

Свет не двигался.

Он просто существовал – как файл без имени, открытый, но не сохранённый.

Море не шевелилось.

Волны будто забыли, что должны возвращаться.

Ася шла к набережной, стараясь не смотреть по сторонам.

Каждое окно в домах отражало небо, но под другим углом.

Будто в каждом доме – своя версия реальности.

У перекрёстка стоял киоск.

Вернее, его каркас – ржавый, покосившийся.

От прежнего остались только металлические стойки и обрывки синей краски.

На одной стенке болтался плакат.

Бумага отсырела, буквы поблекли, но лицо на нём было различимо.

Женщина.

Смотрит прямо в камеру.

С глазами, до боли похожими на её собственные.

Подпись едва читалась:

«Пропала без вести. Вернуться, когда часы зазвенят.»

Ася коснулась пальцем бумаги – и она сразу же поплыла, как фотоплёнка в проявителе.

Краска стекала вниз, как капли крови.

В тот же момент – внутри головы что-то щёлкнуло.

Яркая вспышка.

Как будто кто-то сфотографировал её изнутри.

Щелчок камеры. Белая комната. Голос – мужской, ровный:

"Ты запустила не тот файл."

Мгновение – и всё исчезло.

Воздух снова стал неподвижным.

Только сердце стучало быстрее, будто пытаясь догнать то, что случилось.

Она резко обернулась.

Позади – никого.

Только отражение в витрине – бледное, дрожащее.

Но в нём глаза смотрели чуть иначе.

Чуть раньше.

> error: reflection desynchronized

(Ошибка: отражение рассинхронизировано.)

Она стояла долго, слушая город.

Он не был мёртвым – просто в нём всё жило по другому принципу.

Ветер дышал, как организм.

Фонари не светили, а ждали.

И даже звук шагов – возвращался не сразу, а через мгновение.

Она вдруг подумала, что Стареваль – это не место.

Это процесс.

Функция, запущенная давно, без конца и без возврата.

Каждый, кто сюда приходит, становится переменной.

Иногда – заменяемой.

> variable("ASYA") = undefined

> attempting re-declare…

> success

(Переменная “АСЯ” не определена. Попытка переобъявления… успешно.)

Когда она вернулась в пансион, Анна всё ещё сидела в кресле.

Книга открыта на той же странице.

Тот же абзац, та же закладка.

– Вы когда-нибудь выходите на улицу? – спросила Ася.

Анна улыбнулась чуть заметно.

– Иногда. Когда город хочет, чтобы я его видела.

– И что вы видите?

– Себя. Вчера. Завтра. Никогда – сегодня.

Маятник снова качнулся.

Раз.

Два.

В этот момент изнутри часов донёсся мягкий треск, как будто там, под слоями механизма, кто-то тихо смеётся.

Ася прижала ладонь к корпусу.

Тепло.

Слишком живое для дерева.

> process_running("time_core")

> access denied

(Процесс времени активен. Доступ запрещён.)

Маятник двинулся сам – в сторону, которой не должно быть.

Пошёл не по дуге, а вверх, против закона физики, словно кто-то зацепил его нить изнутри зеркала.

Позже, ночью, ей показалось, что маятник остановился.

Но если прислушаться – нет.

Он просто стал качаться внутри неё.

Мерно, глубоко, будто сердце города нашло новый ритм.

tick

tock

tick

Asya.

Глава 6. Сбой

Вечером пошёл дождь.

Он не начинался – включился, как функция, давно прописанная в памяти города.

Струи били в подоконник ровно, как ритм печатной машинки.

Каждая капля звучала, будто кто-то набирает текст: короткий импульс, пауза, ещё один.

Ася сидела в полумраке, слушая этот код воды.

Город будто разговаривал с ней, но на языке, где слова – это звуки.

Она включила ноутбук.

Экран вспыхнул холодным светом.

Файл mirror.sys всё ещё лежал на рабочем столе, но рядом появился новый – серый значок, без описания:

loop.dat

Пальцы дрогнули.

Она щёлкнула дважды.

Экран мигнул – не просто обновился, а передёрнулся, как живое тело, уставшее от команд.

Вместо редактора появилось белое окно, и в нём всего одна строка:

Ты уже запускала это.

Курсор мигал, как пульс на экране ЭКГ.

Каждое мигание сопровождалось тихим тиканием маятника внизу.

Ася долго смотрела на эту фразу.

Уже запускала что?

Она не помнила.

Но пальцы – будто знали за неё – нажали Enter.

На секунду экран стал зеркалом.

В нём отразилась комната – та же самая, с тем же окном, теми же часами.

Но без неё.

Пустая кровать.

Пустой стул.

Без следов присутствия.

Мигание прекратилось.

Файл исчез.

Экран стал чёрным – не выключенным, а закрытым глазами.

> loop iteration complete

> memory fragment overwritten

(итерация цикла завершена; фрагмент памяти перезаписан)

Сердце билось быстро, как ошибка в бесконечном цикле.

Ошибка без конца и без смысла.

Она резко выдернула кабель питания.

Экран погас.

Но на отражающей поверхности – прежде чем тьма окончательно поглотила свет – мелькнули глаза.

Не её.

Те, что смотрят чуть глубже, чем зеркало позволяет.

На кухне она долго мыла руки.

Вода текла ледяная, как из-под камня.

Каждое движение пальцев отзывалось стуком в висках.

Как будто внутри черепа кто-то тоже включил воду.

Мокрые ладони дрожали, но она не чувствовала холода – только механическое повторение.

Движение, движение, движение.

Как будто тело само пытается себя перезапустить.

В окне мелькнула тень.

Не отчётливо – сбоку, на уровне второго этажа.

Она остановилась, глядя в стекло.

Тень прошла снова.

Быстро, почти касаясь её отражения.

Ася вышла во двор.

Воздух был густой, пах морской солью и мокрым деревом.

Дождь стучал по железной крыше, по лужам, по её плечам.

Но звука шагов – кроме её – не было.

Она стояла среди пустоты, и всё же видела: в воде, у её ног, отражались две фигуры.

Одна – её собственная: в серой куртке, с поднятым воротником, с усталыми глазами.

Вторая – чуть правее, на полшага.

Неясная, как тень от лампы без источника.

Без лица.

Без имени.

Она медленно подняла голову – но рядом никого не было.

Только дождь, и город, дышащий ровно, как больное сердце.

Позже, в комнате, она заметила, что ноутбук включён.

Хотя она помнила, что выключила его.

Экран светился слабым голубым сиянием.

Поверх пустого рабочего стола появлялись новые строки:

> process restarted

> warning: memory leak detected

> user “ASYA” duplicated

> instance conflict

(процесс перезапущен; обнаружена утечка памяти; пользователь "АСЯ" дублирован; конфликт экземпляров)

Её сердце застучало сильнее.

Всё совпадало – слова, звуки, даже синтаксис.

Она словно читала отчёт о собственной жизни.

На экране появилась новая строка:

Удалить повтор?

(Y/N)

Она не дышала.

Смотрела на мигающую букву Y, и ей показалось, что маятник внизу качнулся быстрее.

Три раза.

Пауза.

Ещё раз.

Морзянка.

Знак, который никто не должен был послать.

> input timeout

> default = YES

(время ожидания истекло; значение по умолчанию – “ДА”)

Экран погас.

На секунду в отражении монитора она увидела, как кто-то, очень похожий на неё, садится за стол.

С той же позой, теми же руками.

Только глаза у отражения были чуть темнее.

Как будто в них меньше света, но больше правды.

Ночь прошла без сна.

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

Каждую минуту воздух дрожал, как от лёгких коротких импульсов тока.

Когда рассвело, дождь прекратился.

Море выглядело гладким, но отражения домов шевелились, словно дышали.

Ася сидела у окна, чувствуя, что её собственное дыхание больше не принадлежит ей.

Каждый вдох совпадал с тиком часов.

Каждый выдох – с движением маятника.

И где-то в глубине – будто кто-то говорил через шёпот ветра:

"Ты – процесс. Не человек."

Глава 7. Фотография

На следующее утро Лука ждал её у лавки.

Он стоял под навесом, словно знал, что она выйдет именно в этот момент, именно из этой двери.

В руках – тонкий конверт цвета выцветшего пергамента.

На бумаге проступили следы капель – будто конверт плакал.

– Держи, – сказал он спокойно. – Плёнка проявилась ночью.

Ася нахмурилась.

– Но я не заказывала ничего.

Он улыбнулся.

– Тут нельзя не заказать. Фотографии сами находят, кого нужно.

Голос его был мягким, но в нём звучала усталость – такая, что кажется вечной.

Она взяла конверт.

Бумага хрустнула, как кожа старого альбома.

Внутри – снимок.

Она стоит у моря.

Море неподвижно, как зеркало.

Свет серый, будто день не решился начаться.

Но на заднем плане – фигура женщины.

Точь-в-точь такая же.

Те же волосы, та же куртка, та же поза.

Только без тени.

Ася почувствовала, как в груди – странное сжатие, будто сердце на секунду забыло о цикле.

– Кто это? – спросила она.

Лука медленно закурил.

Пламя осветило его лицо, и на миг она заметила, что глаза у него отражают не огонь, а холодное свечение – как у монитора.

– Вопрос неправильный, – сказал он. – Не “кто”. А “когда”.

Он ушёл, оставив запах табака и мокрой бумаги.

Ася долго стояла на месте, держа снимок в руках.

Фотография холодила кожу, словно хранила в себе температуру чужого времени.

Когда она перевернула карточку, на обороте было выдавлено – не написано, а будто продавлено в эмульсии – слово:

Конец ознакомительного фрагмента.

Текст предоставлен ООО «Литрес».

Прочитайте эту книгу целиком, купив полную легальную версию на Литрес.

Безопасно оплатить книгу можно банковской картой Visa, MasterCard, Maestro, со счета мобильного телефона, с платежного терминала, в салоне МТС или Связной, через PayPal, WebMoney, Яндекс.Деньги, QIWI Кошелек, бонусными картами или другим удобным Вам способом.