Артем Паук
Архитектура реальности

Глава 1. Тройка

Катя положила телефон на кухонный стол экраном вниз.

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

— И что? — спросила Марина.

Катя пожала плечами.

— Три.

Соня, сидевшая рядом с ней на кухонном стуле, перестала жевать огурец.

— Три чего?

— По математике, — ответила Катя. — ОГЭ.

Соня подумала и кивнула, будто это было слово из взрослой инструкции.

— Это плохо?

— Нет, — слишком быстро сказал Данил. — Это проходной балл.

Катя посмотрела на него. Не зло. Хуже: так, как смотрят на человека, который опять пришёл не в ту комнату.

— Я знаю, что это проходной балл.

Марина поставила на плиту сковороду. Масло в ней тихо щёлкнуло.

— Кать, пересдать нельзя?

— Зачем? Я сдала.

— Ты хотела в профильный класс.

— Уже не хочу.

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

— Можно поговорить нормально? Не вот так, по одной фразе.

— А как нормально? — Катя откинулась на спинку стула. — Ты мне сейчас скажешь, что тройка не определяет всю жизнь. Потом скажешь, что есть курсы. Потом сделаешь табличку.

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

— Я не буду делать табличку, — сказал он.

— Уже сделал. В апреле.

Это было правдой. Катя тогда написала ему из школы: *Пап, ты вечером можешь объяснить одну тему?* Данил был на созвоне с заказчиком, потом собирал вещи в командировку, потом вспомнил ближе к полуночи и отправил ей ссылку на курс. Таблицу он сделал наутро: темы, даты, часы, контрольные точки.

Катя не открыла её ни разу.

— Я хотел помочь, — сказал Данил.

— Ты хотел, чтобы у тебя больше не было проблемы.

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

— Не надо так, — сказал он. — Я не враг тебе.

— Ты вообще не здесь, пап.

Катя встала. Телефон остался на столе. Она взяла его только у двери и ушла в комнату. Дверь не хлопнула. Щелчок замка был едва слышен.

Соня съела ещё один кусок огурца.

— А Катя теперь со мной не будет разговаривать? — спросила она.

— Соня, — тихо сказала Марина.

— Что? Она же на всех злится.

— Не на тебя, — сказал Данил. — И не навсегда.

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

Соня кивнула и потянулась за водой.

Марина выключила плиту.

— Ты правда не видишь, что сделал? — спросила она.

— Я? — Данил оглянулся на закрытую Катину дверь. — Я виноват, что она не подготовилась?

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

— Это была не домашка. Там нормальный разбор.

— Дань.

Он ненавидел это уменьшительное в такие минуты. Оно означало, что сейчас его будут не слушать, а объяснять ему самого себя.

— Хорошо. Скажи, что надо было сделать.

— Прийти вечером. Сесть рядом. Сказать: «Давай попробуем». Даже если ты сам уже ничего не помнишь про геометрию.

— Я работал.

— Ты всегда работаешь.

На планшете в магнитном держателе на холодильнике была открыта «Родня» — семейное приложение, где Марина собирала календарь, фотографии, звонки и короткую летопись их жизни. В субботе стояла синяя плашка: **Данил — Aurelia, 7 дней**. Марина сама внесла поездку месяц назад, когда Данил сказал, что ему нужен отпуск и тишина. Тогда это звучало разумно. Сейчас плашка была похожа на заранее подписанную капитуляцию.

— Я не поеду, — сказал он.

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

— Поедешь.

— Марин.

— Нет. Не делай из этого красивый жест. Ты не останешься, чтобы быть с Катей. Ты останешься, чтобы доказать, что ты хороший отец. Это разные вещи.

Данил хотел возразить. Не нашёл слов.

Соня сползла со стула и подошла к нему. У неё между передними зубами темнела тонкая сколотая дуга — весной она упала с самоката у магазина. Тогда Марина кричала на Данила, что он отвернулся к телефону на секунду. Данил в ответ кричал, что ребёнку шесть лет и она умеет смотреть под ноги. Потом оба молчали до ночи.

— Пап, — сказала Соня. — А там будет небо?

— Где?

— В твоей Аурелии.

— Будет.

— Тогда сфотографируй. Чтобы я видела.

Он обнял её. Соня пахла яблочным шампунем и огурцом.

— Обязательно.

За стеной у Кати прозвучали четыре аккорда. Не мелодия — старое упражнение, которое она, наверное, ненавидела ещё в музыкалке. Она сбилась на третьем, помолчала и начала сначала. Потом ещё раз.

После ухода из музыкалки Катя садилась за пианино только тогда, когда не хотела ни с кем разговаривать. Данил никогда не понимал, просит она этим о помощи или, наоборот, запирает дверь ещё крепче.

Он так и остался на кухне.

Глава 2. Aurelia

Неделю спустя Данил выехал из Кеми после обеда.

— Бензин полный? — спросила она.

— Полный.

— Камеры взял?

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

Соня выбежала из комнаты в носках разного цвета.

— Небо!

— Сфотографирую.

— И покажешь в «Родне».

— Покажу.

Катя не вышла. Данил посмотрел на её дверь. Под ней лежала полоска света. Он мог постучать. Мог сказать что-нибудь простое, без советов, без объяснений. «Я уезжаю на несколько дней». «Пока». «Прости».

Он поднял рюкзак.

— Передай Кате, что я…

Марина подняла глаза.

— Сам передай.

Он не передал.

До Чупы было чуть больше ста километров, но после Лоухов дорога потеряла человеческий масштаб. Лес стоял по обе стороны так близко, что казалось, машина едет в зелёной трубе. Изредка открывалась вода: холодная ламба, камни у берега, одинокая лодка, перевёрнутая вверх дном. Данил включил подкаст, выключил через десять минут и дальше ехал в тишине.

«Аурелия» оказалась не такой, как на фотографиях.

На снимках были панорамные окна, костёр в металлической чаше и ровный настил к воде. В реальности три тёмных деревянных дома стояли на склоне неровно, будто их ставили в разные годы и с разным терпением. Между домами тянулись доски, почерневшие от дождей. Под навесом висела связка спасательных жилетов. У беседки стоял старый металлический мангал, а рядом — закрытая брезентом лодка.

Зато место было тихим.

Данилу открыл мужчина лет шестидесяти в серой флиске.

— Вы Данил? Домик «Рыбак». Один будете?

— Один.

Мужчина посмотрел на его рюкзак, потом на машину.

— Хорошо. У вас тут всё. Вода из крана техническая, питьевая в баке у кухни. Связь на крыльце ловит лучше. Если медведя увидите — не бегите.

— А что делать?

— Не увидите, — сказал мужчина и улыбнулся. — Они умнее нас.

«Рыбак» был маленьким: комната с двумя кроватями, стол, электрическая плитка, холодильник и окно на воду. Данил поставил рюкзак на пол, включил чайник и сел на край кровати.

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

От этой свободы стало не легче.

Он открыл «Родню». В ленте Марина добавила в календарь задачу: **Созвон с заказчиками — 11:00**. Под ней Соня выложила фотографию своей ладони на тетрадном листе. В подписи было: *Я учусь писать букву Р но папа далеко.*

Одного сердечка показалось Данилу мало. Он нажал на значок звонка.

Марина ответила не сразу.

— Доехал?

— Да.

— Дом нормальный?

— Нормальный. Лодка есть. Медведи есть.

— Очень смешно.

— Соня где?

— В ванной. Катя у себя.

Пауза стала длиннее, чем требовалось для обычного разговора.

— Я с ней поговорю, — сказал Данил.

— Когда?

Он посмотрел в окно. Вода была ровной, без единой полосы ветра.

— Сегодня.

— Хорошо.

Марина отключилась. Данил ещё несколько секунд смотрел на чёрный экран.

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

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

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

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

Он выложил снимок в «Родню» и подписал "Тут ночь не умеет темнеть".

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

Катя ничего не поставила.

Позвонить ей Данил так и не решился.

Глава 3. Два неба

Утром пошёл дождь.

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

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

Связь на крыльце ловила и правда лучше, чем в домике. Он вышел туда с телефоном и увидел в ленте короткое видео: женщина показывала небо над трассой и рассказывала, что если несколько раз сохранить снимок, отредактировать и снова сохранить, в облаках появляются цветные полигоны. «Матрица не умеет рисовать небо», — было написано поверх ролика.

Данил досмотрел до конца и фыркнул.

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

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

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

— Поздравляю, — сказал он себе. — Ты изобрёл компрессию.

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

На телефонном снимке облака были рыхлыми, с серыми краями. На кадре с камеры над деревьями лежали те же светлые облака, но между ними проходила едва заметная ломаная грань. Не цветная. Просто слишком ровная для облака.

Данил увеличил изображение. Грань исчезла в шуме матрицы.

Он попробовал не думать о ней.

Днём ему позвонил Михаил, хозяин базы, и спросил, не нужна ли лодка. Данил отказался. Потом дважды пытался позвонить Кате. Она не ответила. На третий раз он не стал нажимать вызов, а написал:

*Как ты?*

Сообщение висело непрочитанным до вечера.

В 21:10 он вышел на пробежку.

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

Телефон зазвонил в кармане.

На экране было: Соня.

— Привет, Соник.

— Пап, а ты правда один там?

— Правда.

— И тебе не страшно?

Данил усмехнулся.

— Пока нет.

— А если медведь?

— Михаил сказал, они умнее нас.

— Это потому что они не работают?

— Скорее потому, что не спорят с девочками после ОГЭ.

Соня помолчала.

— Катя не хочет с тобой говорить.

— Я знаю.

— Я ей сказала, что ты скучаешь.

— Спасибо.

— Она сказала: «Ну, короче, пусть скучает».

Данил остановился. Из-за деревьев донёсся знакомый звук мотора.

— Пап?

Он машинально посмотрел на часы.

21:17.

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

— Пап, ты тут?

— Да. Машина проехала.

— Какая?

— Никакая. Просто машина.

Соня вздохнула так, как вздыхала Марина, когда Данил начинал объяснять то, о чём его не спрашивали.

— Ты небо сфотографировал?

— Сфотографировал.

— Завтра ещё пришли. Но не такое грустное.

— Постараюсь.

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

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

Ничего странного. Кроме того, что вчера в это же время по этой же дороге проезжала такая же машина.

Вернувшись, он открыл телефон и увидел ответ Кати.

Нормально.

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

Данил нажал на неё, но в этот момент на ноутбуке мигнул рабочий чат. Он машинально закрыл «Родню» и открыл сообщение инженера.

Голосовую Кати он так и не прослушал.

Глава 4. Семнадцать минут

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

До вечера он не вспоминал об универсале. Съездил в Чупу за нормальным хлебом, сыром и чем-нибудь, что не надо готовить на плитке. В маленьком магазине с запотевшими витринами выбирал между двумя одинаковыми пачками макарон и думал только о том, что опять купил бы Кате не то.

Перед выездом из посёлка Данил остановился у магазина и ответил Марине в «Родне». На часах приборной панели было 21:12.

Как твой заказчик?— написал он.

Ответ пришёл сразу:

Не мой. Я только сделала варианты кухни. Они выбрали самый скучный.

Данил набрал: Зато деньги заплатят.

Потом стёр. Написал:

Жалко. Мне второй нравился.

Марина прислала только: Ты его видел две секунды.

Это тоже было правдой.

Универсал появился впереди, когда Данил уже миновал поворот к базе. Он шёл в ту же сторону, быстро дошёл до изгиба и в 21:17 вошёл за еловую стену.

Данил невольно сбросил скорость. Через несколько секунд автомобиль выехал на прямой участок и растворился в лесу.

Ничего не случилось. Но это был третий вечер подряд, когда Данил видел тёмный универсал, и второй — когда машина проходила поворот ровно в 21:17.

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

Но хорошие инженеры не спорили с ошибкой. Они собирали логи.

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

— Вот и всё, — сказал он.

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

На телефоне снова горела голосовая Кати. Данил увидел её, когда открыл «Родню», но не нажал. Вместо этого пролистал ленту ниже.

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

Подпись была короткой: Вариант для Иры. Она права: иногда нужна не новая кухня, а свет.

Данил поставил сердечко. Почти сразу пожалел. Ему казалось, что любое его движение теперь выглядит как попытка компенсировать неделю отсутствия.

На следующий вечер, в 21:15, он уже стоял у поворота с часами в руке.

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

21:16:58.

Данил услышал двигатель.

Универсал прошёл мимо него в 21:17:04. Точно так же, как вчера. На этот раз Данил не смотрел на номер. Он смотрел на водителя, но лобовое стекло поймало свет неба и стало зеркальным.

Машина вошла за поворот.

Данил посмотрел на секунды. Через двенадцать они показались снова: универсал вышел на прямой участок и ушёл дальше, как уходил все предыдущие вечера.

Он записал в заметку: 21:17:04. Тёмный универсал. Тот же маршрут.

«Ну конечно», — подумал он. — «Ты теперь ведёшь журнал про случайную машину».

Но решение уже сложилось, как схема после последней стрелки.

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

Глава 5. Две камеры

К полудню Данил перестал надеяться, что забудет про поворот.

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

— Вы бы их видели, — говорил Михаил. — Сидят, парятся от страха и от печки. А лось траву жрёт.

Данил смеялся в нужных местах. Потом вернулся в домик и снова открыл карту.

В четыре часа он поехал к повороту с рюкзаком.

Первую камеру закрепил на сосне перед изгибом, чуть выше человеческого роста. С неё было видно метров семьдесят дороги и начало поворота. Вторую поставил у старого столба с выцветшим номером квартала — с другой стороны, на прямом участке. Угол он проверил дважды. Между камерами оставалась мёртвая зона, но слишком короткая, чтобы в ней мог исчезнуть целый автомобиль.

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

— Камеры от медведей? — спросила женщина.

— От машин.

Она не улыбнулась.

— Тут машин мало. Особенно вечером.

— Вот и проверяю.

Женщина кивнула, будто услышала не ответ, а что-то другое. Собака потянула её в сторону базы. Данил смотрел им вслед, пока рыжая спина не исчезла за соснами.

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

Это был самый надёжный способ не обмануть себя: фиксировать то, что произошло, до того как придумал объяснение.

В «Родне» Марина писала в семейный чат:

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

Данил набрал номер дочери. Марина подняла трубку и шепнула:

— Не буди. Она будет плакать, что ты разбудил.

— Я обещал позвонить.

— Позвони завтра утром.

— Как Катя?

Марина помолчала.

— Закрылась.

— Она мою голосовую…

— Даня, не надо сейчас искать взаимность как отчёт о доставке. Ты написал — хорошо. Дай ей время.

Он почувствовал раздражение и сразу же стыд за него.

— Я не это имел в виду.

— Знаю.

— Как твой проект?

— Отправила правки. Ира сказала, что заказчики передумали насчёт стены. Так что всё заново.

Раньше он сказал бы: «Значит, надо пересчитать часы и предложить доплату». Сейчас он вспомнил чёлку, которую Марина сдувала с глаз у плиты, и то, как она не повернулась к нему.

— Ты, наверное, устала, — сказал он.

Марина коротко усмехнулась.

— Да.

Это было всё. Но в её голосе что-то отпустило. Не простило. Просто перестало сопротивляться каждую секунду.

Когда звонок закончился, Данил увидел в личном чате Катину голосовую. Тридцать семь секунд. Он снова занёс палец над значком воспроизведения.

Снаружи завёлся мотор.

Данил посмотрел на часы.

21:16:49.

Он схватил ноутбук, выбежал на крыльцо и сел в машину. Камеры уже писали сами, но ему нужно было видеть дорогу. Не на экране. Глазами.

В 21:17:03 тёмный универсал появился на первом кадре.

Данил смотрел на него через лобовое стекло своей машины. Потом — на ноутбук, где в верхнем окне автомобиль входил за поворот. В нижнем окне после поворота дрожали ветки и пустела дорога.

Универсал не появился.

Данил подождал десять секунд. Потом ещё десять.

Он поставил ноутбук на пассажирское сиденье и перемотал запись первой камеры. Автомобиль был там. Он видел его целиком: фары, капот, грязную полосу на правой двери. Машина доехала до края кадра и ушла за ель.

Вторая камера не поймала ничего.

— Нет, — сказал Данил.

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

Он вышел из машины.

Первой мыслью была авария. Машина могла удариться в дерево в мёртвой зоне, скатиться в канаву, уйти в воду. Даже если Данил видел дорогу чистой — он мог не заметить. Он стоял далеко. Он смотрел на экран.

Уже через секунду он бежал.

Телефон прыгал в кармане, ударяясь о бедро. На экране мигнуло непрослушанное сообщение Кати. Данил не заметил.

У поворота лес стал тише. Не спокойнее — тише. Как будто кто-то выкрутил звук вниз и оставил только его дыхание, шорох подошв и кровь в ушах.

За изгибом не было машины.

Данил сделал ещё несколько шагов. Дорога тянулась перед ним слишком прямо, слишком долго. Он обернулся.

Сосна с камерой стояла там, где должна.

За ней начинался жёлтый свет.

Г