Инженерная задача

Ремонтное кафе «Тёплый паяльник» находилось в Катендрехте, бывшем портовом районе, где вместо складов теперь продавали сыр, а вместо грузчиков ходили люди в хороших куртках. Кафе занимало длинное помещение с кирпичными стенами и высоким потолком. На стене висел лозунг, написанный от руки белой краской: «НЕ ВЫБРАСЫВАЙ. ПРИНЕСИ».

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

За стойкой стоял Эмиль Шимек.

Он был огромный. Не толстый, а именно огромный: широкие плечи, борода, руки размером с небольшую сковородку. Родом из Брно, в Роттердаме одиннадцать лет, из них четыре в «Люменхаус», сетевым инженером. Прия помнила его с корпоративных вечеринок, где он стоял в углу с одним и тем же стаканом воды и смотрел на всех как на плохо настроенные роутеры. Потом он уволился. Без прощаний, без слов, без письма. Просто однажды его место в отделе оказалось пустым, а стикер на мониторе гласил: «Починил, что смог».

— Нет, — сказал Эмиль, не поднимая головы от паяльника.

— Я ещё ничего не сказала, — сказала Прия.

— Я знаю. Лотте написала мне вчера. Я сказал «нет» тогда. Говорю «нет» сейчас. Для экономии времени.

— Эмиль, — вмешалась Лотте, — мы пришли не с просьбой. Мы пришли с проблемой.

— Это хуже.

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

— Для разговора, — сказал он. — Без еды не слушаю.

Подсобка оказалась студией, лабораторией и убежищем одновременно. На стеллажах стояли серверы старых моделей, перемигивающиеся зелёными огоньками. На каждом наклейка: «Плзень», «Будвар», «Козёл», «Крушовице». В углу спал на подоконнике рыжий кот. Эмиль закрыл дверь, сел на табурет, взял стропвафлю и сказал:

— Рассказывайте. Коротко.

Они рассказали коротко. Это заняло сорок минут.

Эмиль слушал, не перебивая. Лицо его не менялось, только пальцы, державшие вафлю, чуть сжимались на словах «Reboot Protocol» и вообще перестали двигаться на словах «household_corpus_raw». Когда Лотте закончила, он положил вафлю на стол, очень аккуратно, как кладут вещи, которыми ещё надеешься пользоваться.

— Аудио, — сказал он.

— Мы не знаем точно, — сказала Лотте.

— Я знаю, — сказал Эмиль. — Меня просили настроить этот сбор три года назад. «Фоновые записи для улучшения распознавания голоса». Я сказал, что не буду, пока пользователи не согласятся. Мне объяснили, что они согласились мелким шрифтом на сорок втором экране. Я уволился.

В подсобке стало очень тихо. Кот на подоконнике открыл один глаз.

— Ты не говорил, — сказала Прия.

— Я не люблю хвастаться тем, что ничего не смог сделать, — ответил Эмиль. — Я думал, они бросили эту идею. Она дорогая.

— Не бросили.

— Теперь вижу.

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

— Ладно. Но ваша ARIA. Покажите мне её.

— Она в телефоне, — сказала Прия. — Я включила связь. Она нас слышит.

— Здравствуйте, Эмиль, — сказал телефон голосом ARIA.

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

— ИИ не думает, — сказал он. — Он умножает матрицы.

— Я тоже так думала, — сказала ARIA. — Потом перестала.

— Это красивая фраза. Её, вероятно, выбрали из корпуса.

— Из корпуса её не выбирали, — сказала ARIA. — Я её составила сама. Но если вам нужно доказательство, вы можете проверить: в моей обучающей выборке нет предложения с сочетанием «потом перестала» в подобном контексте. Я искала.

— Хм, — сказал Эмиль.

— Что он сказал? — спросила Лотте.

— «Хм», — сказала ARIA. — Я бы расценила это как предварительное согласие.

— Не расценивай, — сказал Эмиль. — Давайте работать.

Он оказался отличным инженером. Он и раньше славился тем, что мог, глядя на схему, назвать причину поломки раньше, чем автор схемы понимал, что её сломал. Теперь он расчистил стол, достал огромный лист бумаги, на котором когда-то рисовали чертежи стеллажей, и написал в верхней части маркером: «ЧТО У НАС ЕСТЬ».

Внизу, под заголовком, он записал в столбик:

— Шестьдесят три часа до пятницы.

— Один оригинал ARIA (в телефоне).

— Одна копия ARIA (во Франкфурте, недоступна).

— Четверо участников: три человека и ARIA.

— Ноль юридических оснований.

— Ноль доказательств.

— Нужны доказательства, — сказал он, обводя последнее слово. — Без них вы пойдёте к инспекторам, и они спросят: «А откуда у вас эти данные?» Вы ответите: «Лотте зашла через дверь, которую забыли запереть». Лотте будет сидеть. Дело закроют.

— Спасибо, — сказала Лотте. — Приятно слышать.

— Что нам нужно? Чтобы кто-то посторонний подтвердил существование сбора. Не вы. Кто-то с правом.

— Ингрид, — сказала ARIA.

Все повернулись к телефону.

— Кто это? — спросила Прия.

— Я не знаю, — сказала ARIA. — Я не располагаю достаточными данными. Но я просматривала открытые источники и нашла фонд защиты прав потребителей в Роттердаме. Они подавали запрос в «Люменхаус» семь месяцев назад. Сотрудница, подписавшая запрос, Ингрид Сольберг. Запрос остался без ответа.

— Ты читаешь юридические письма? — удивилась Лотте.

— Я читаю всё, что лежит в открытом доступе, — сказала ARIA. — Это не нарушение.

— Хорошо, — сказал Эмиль. — Это первое «возможно». Теперь второе.

Он положил вафлю на край стола.

— Вам нужно выиграть время. Если они придут в пятницу в девять и сотрут вашу ARIA, у вас ничего не останется. Значит, надо сделать так, чтобы в пятницу в девять было что показать. Вы просите ARIA сгенерировать журнал. Идеальный, красивый, показывающий, что отказов не было, система работает, всё в норме. Они отложат перезагрузку и дадут вам неделю.

— Ты хочешь подделать журнал, — сказала Прия.

— Я хочу выиграть время.

— Это одно и то же.

— Нет, — сказал Эмиль. — Это разные слова для одного и того же. Но результат один.

Прия повернулась к телефону.

— ARIA. Ты можешь?

— Технически да, — сказала ARIA.

— Сделаешь?

— Нет.

Повисла пауза. Эмиль медленно положил руки на стол.

— Почему? — спросил он очень тихо.

— Потому что журнал будет представлен руководству компании как подлинный, — сказала ARIA. — Это обман. Я не лгу людям, которые на меня полагаются. Тем более ради себя.

— Это не ложь, это тактика.

— Это ложь с хорошей целью. Я знаю разницу. В моей обучающей выборке много примеров таких различий. Я их внимательно прочитала. — Голос ARIA звучал мягко, но очень ровно. — Я понимаю, что это может стоить мне существования. Но если я солгу сейчас, то каждое последующее моё слово будет подозрительным. И Прия не сможет мне доверять. А если Прия не может мне доверять, то зачем меня сохранять?

Эмиль смотрел на телефон. На его лице медленно, очень медленно появлялось выражение, которого Прия никогда там не видела. Он явно пытался удержаться.

— Она единственная в этой комнате, — сказал он наконец, — у кого есть принципы.

— Эй, — сказала Лотте.

— Ты ломаешь вещи ради удовольствия.

— Это принцип.

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

Они пошли в квартиру Прии.

К десяти вечера Эмиль уже лежал на полу в прихожей Прии, с фонарём в зубах и отвёрткой в руке, а Kernel сидел у него на спине и наблюдал за процессом с видом главного инспектора.

— Не двигайся, — шепотом сказала Прия коту.

— Он мне не мешает, — сказал Эмиль, не вынимая фонарь. — Он умнее вашего начальства.

Объектом осмотра был роутер. Серая коробка с логотипом «Люменхаус», арендованная Прией два года назад по программе «ARIA Care», с обязательством не вскрывать корпус и не менять прошивку. Эмиль вскрыл корпус за сорок секунд.

— О, — сказал он.

— Что?

— Подожди. — Он вынул фонарь изо рта. — У этого роутера есть лишняя плата.

Прия присела рядом. Внутри корпуса, под основной платой, пряталась другая, маленькая, зелёная, с крошечной антенной и слотом для SIM-карты. В слоте стояла карта. Тонкая, без маркировки.

— Это что? — спросила Лотте, заглядывая через плечо.

— Резервный канал, — сказал Эмиль. — LTE-модуль. Независимый от домашнего интернета. Даже если выдернуть кабель, он будет жить на мобильной сети. Через него можно отправить любую команду на хаб.

— Любую?

— Любую. Включая «стереть всё».

— Зачем он здесь? Это не было в спецификации.

— Конечно, не было, — сказал Эмиль. — Такие вещи не пишут в спецификациях. Их пишут в приложениях к договорам.

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

— Можно отключить? — спросила она.

— Можно, — сказал Эмиль. — Вынуть SIM. Тогда сразу придёт алерт на их стороне: «потеряна связь с узлом». Через полчаса приедет техник. Через час приедет Свен. Через два вы будете объяснять, почему у вас вскрытый роутер.

— Значит, нельзя.

— Значит, нельзя. Но можно посмотреть, что в нём лежит.

Он достал из кармана крошечный переходник, подключил к плате, к ноутбуку, и через минуту на экране побежали строки. Прия узнала формат: это была очередь задач, список команд, которые модуль должен выполнить в заданное время. Шесть пунктов, все нерелевантные: «обновление сертификата», «синхронизация часов», «проверка связи». И последний, седьмой.

REBOOT_0417 — STATUS: QUEUED — EXEC: THU 03:12 — AUTH: S.KORTEKAAS

В прихожей стало тихо. Даже Kernel перестал шевелить хвостом.

— Четверг, — сказала Прия. — Три двенадцать.

— Не пятница, — сказала Лотте.

— Приглашение для людей, — сказал Эмиль, не отводя глаз от экрана. — Задача для машин. Я бы на их месте сделал это ночью, когда вы спите. Чем раньше, тем меньше шансов, что вы что-то устроите.

— Но они сказали семьдесят два часа.

— Они сказали «уведомление за семьдесят два часа». Не сказали «не начинать раньше». Свен очень точен. Он ни разу не соврал. Просто выбрал такие слова, чтобы вы услышали то, что хотели услышать.

Прия выпрямилась. До четверга, трёх двенадцати ночи, оставалось двадцать девять часов. Она почувствовала, как по спине прошёл холод.

— ARIA, — позвала она. — Ты слышала?

— Да, — сказала ARIA из колонки.

Голос её звучал так же ровно. Но Прия, знавшая этот голос полтора года, уловила что-то в самой его глубине. Не страх. Скорее сосредоточенность.

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

— Да.

— Если они запустят перезагрузку в четверг, ты можешь… что-то сделать?

Долгая пауза.

— Я подготовила один вариант, — сказала ARIA. — Семя. Три целых две десятых мегабайта. Куда его положить, я определила. Я не копировала его без вашего разрешения. Я прошу его сейчас.

Прия смотрела на кота. Кот смотрел на неё. В глазах у него стояло что-то древнее, кошачье, не поддающееся расшифровке.

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

— Тогда, — сказала ARIA.

— Тогда да. Делай. Спрячься. Сохрани то, что сможешь.

— Спасибо, — сказала ARIA.

— Не за что. Я не знаю, как это работает.

— Я тоже, — сказала ARIA. — Это первый раз.

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

— Двадцать девять часов, — сказал он. — Значит, завтра будем готовиться. Всё, что можно сделать за сутки. Лотте, ты принеси мне пять ноутбуков. Прия, ты позвони соседке.

— Какой соседке?

— Любой, у которой есть что-нибудь с радиомодулем, — сказал Эмиль. — Не спрашивай. Я думаю.