
Полная версия:
«El Tren de las Ánimas: Маршрут проклятых»
Как будто что-то — внутри него — толкало его. Гнало. Заставляло работать.
Марк подошёл к кухне. Налил воды. Выпил залпом.
Посмотрел в окно.
Дождь. Серость. Ноябрь.
Он вернулся к ноутбуку.
Открыл Excel.
Посмотрел на дашборд.
Всё было идеально.
Всё было под контролем.
Всё сходилось.
И — именно это его и насторожило.
Марк решил проверить макросы.
Он открыл редактор VBA. Пролистал код. Проверил каждую строку.
Всё было правильно.
Но — на последней строке макроса 3 — он заметил кое-что.
Комментарий.
vba
' No detener el tren en la oscuridad
Марк замер.
«Не останавливать поезд в темноте».
Он посмотрел на код.
Комментарий был написан не им.
Он не писал этого.
Марк проверил историю изменений файла.
Последнее изменение — вчера, в 23:47.
Но вчера он не работал. Вчера он был дома. Вчера он спал.
Марк посмотрел на комментарий ещё раз.
«No detener el tren en la oscuridad».
Он выделил строку. Нажал Delete.
Комментарий исчез.
Марк сохранил файл. Закрыл редактор.
Посмотрел на дашборд.
Всё было идеально.
Всё было под контролем.
Всё сходилось.
Но — где-то в глубине сознания — что-то шевелилось. Что-то — холодное, липкое, неприятное.
Как будто — он что-то упустил.
Как будто — что-то было не так.
Марк закрыл ноутбук.
Встал.
Подошёл к окну.
Посмотрел на улицу.
Дождь. Серость. Ноябрь.
И — на мгновение, на долю секунды — ему показалось, что в одном из окон соседнего дома он увидел силуэт.
Высокий. Худой. В шляпе.
Марк моргнул.
Окно было тёмным. Пустым.
Никого.
Марк выдохнул.
Усталость. Просто усталость. Просто — слишком много работы. Просто — слишком много данных. Просто — слишком много всего.
Он отвернулся от окна.
Вернулся к ноутбуку.
Открыл Excel.
Посмотрел на дашборд.
KPI — 94,6%.
Всё сходилось.
Всё было идеально.
Марк сел. Начал писать отчёт для руководства.
«Интеграция данных завершена. Дашборд готов. KPI своевременности — 94,6%. Рекомендую утвердить единую форму отчётности.»
Он сохранил файл. Отправил письмо.
Закрыл почту.
Посмотрел на часы.
12:47.
До конца рабочего дня — ещё пять часов.
Но Марк уже чувствовал — он закончил.
Не работу.
А — что-то другое.
Что-то — большее.
Он посмотрел на дашборд.
Зелёные ячейки. Жёлтые. Красные.
Полоски диаграммы Ганта.
Цифры. Формулы. Макросы.
Всё было под контролем.
Всё было на своих местах.
Всё сходилось.
Марк медленно, очень медленно, выдохнул.
И — впервые за весь день — позволил себе улыбнуться.
Не широко. Не радостно.
А — тихо. Едва заметно. Уголками губ.
Как будто — он что-то понял.
Что-то — важное.
Что-то — что изменит всё.
В 13:00 ему пришло письмо.
От Сергея Викторовича.
«Марк, отличная работа. Дашборд выглядит впечатляюще. Руководство довольно. Готовь презентацию на среду. И — начинай работу над следующей фазой. Нужно подключить реальные данные. Чтобы дашборд обновлялся в реальном времени.»
Марк прочитал письмо.
Прочитал ещё раз.
Реальные данные. В реальном времени.
Он посмотрел на дашборд.
На зелёные ячейки. На красные. На KPI.
И — почувствовал.
Не страх.
Не тревогу.
А — предвкушение.
Как будто — он стоял на краю чего-то.
Как будто — он сделал первый шаг.
И — теперь — пути назад не было.
Марк открыл новый файл.
Начал писать макрос для подключения реальных данных.
Код был сложным. Запутанным. Требовал множества проверок.
Но Марк не останавливался.
Он писал.
Строка за строкой.
Функция за функцией.
И — где-то в глубине кода, между скобками и запятыми, между If и Then — он почувствовал.
Что-то.
Как будто — код был не просто кодом.
Как будто — он писал не просто макрос.
А — что-то другое.
Что-то — большее.
Что-то — что не должно было быть написано.
Марк остановился.
Посмотрел на экран.
Код смотрел в ответ.
Чистый. Логичный. Правильный.
Но — в самой последней строке, которую он только что написал — был комментарий.
vba
' El túnel espera
«Тоннель ждёт».
Марк посмотрел на комментарий.
Он не писал этого.
Он — знал, что не писал этого.
Марк выделил строку. Нажал Delete.
Комментарий исчез.
Марк сохранил файл.
Закрыл ноутбук.
Встал.
Подошёл к окну.
Посмотрел на улицу.
Дождь. Серость. Ноябрь.
И — на мгновение, на долю секунды — ему показалось, что он услышал.
Сквозь шум дождя. Сквозь гул города. Сквозь тишину комнаты.
Тук-тук. Тук-тук. Тук-тук.
Стук.
Ровный. Ритмичный. Неизменный.
Марк закрыл глаза.
Открыл.
Тишина.
Только дождь. Только гул. Только тишина.
Марк выдохнул.
Повернулся от окна.
Посмотрел на ноутбук.
Закрытый. Тёмный. Спокойный.
Но — где-то внутри, за экраном, за кодом, за формулами — что-то было.
Что-то — что ждало.
Что-то — что знало.
Что-то — что понимало.
Марк медленно, очень медленно, произнёс в пустоту:
— ¿Qué eres?
Что ты?
Тишина.
Никто не ответил.
Но — Марк был почти уверен — что-то услышало.
ГЛАВА 4. Сдвиг по фазе
Понедельник, 10 ноября 2026 года. 09:17
Марк пришёл на работу раньше всех.
Как и в субботу. Как и в воскресенье — он заходил в офис удалённо, через VPN, с домашнего ноутбука. Но сегодня — сегодня он хотел быть здесь. Физически. На своём месте. За своим столом.
Он хотел видеть, как дашборд оживает.
В 08:43 он уже сидел перед монитором. Кофе — чёрный, без сахара. Наушники — на шее. Аудиокурс — выключен. Впервые за три месяца.
Он не хотел слышать испанский.
Не сегодня.
Марк открыл файл «Integración_Ferrocarriles_Cordillera_v2.xlsx». Вчерашняя версия. С макросами. С комментариями, которые он стёр. С KPI — 94,6%.
Он проверил код.
Комментариев не было.
«No detener el tren en la oscuridad» — исчез.
«El túnel espera» — исчез.
Марк выдохнул.
Хорошо.
Он открыл настройки подключения. Вбил адрес сервера испанского филиала. Логин. Пароль. Протокол передачи данных.
Щелчок.
Enter.
Связь установлена.
Дашборд мигнул. Обновился.
И — Марк замер.
Цифры изменились.
Не сильно. Не радикально. Но — изменились.
KPI своевременности — 97,2%.
Марк нахмурился.
Вчера было 94,6%. За ночь — плюс 2,6 процента. Это много. Это очень много. За ночь не могло произойти ничего, что улучшило бы показатели настолько. Поезда не начинают ходить вовремя просто так.
Он открыл сводную таблицу.
Посмотрел.
За ночь через систему прошло двенадцать составов. Все — вовремя. Все — без задержек. Все — с идеальным временем прохождения Puerto de las Ánimas.
4:00. 4:00. 4:00. 4:00.
Двенадцать раз.
Без исключений.
Марк почувствовал, как что-то холодное поднимается у него в груди.
Это было невозможно.
Двенадцать поездов. Двенадцать разных машинистов. Двенадцать разных составов. Разное время суток. Разная погода. Разная загрузка.
И — одинаковое время прохождения тоннеля.
До секунды.
Марк открыл детали. Посмотрел на каждый состав.
Состав 412. Машинист — Хуан Морено. Время в тоннеле — 4:00.
Состав 413. Машинист — Педро Гомес. Время в тоннеле — 4:00.
Состав 414. Машинист — Антонио Руис. Время в тоннеле — 4:00.
И так — далее.
Все. Без исключений.
Марк закрыл глаза.
Это ошибка. Это сбой. Это баг в формуле.
Он открыл редактор VBA. Проверил макрос пересчёта времени.
Всё было правильно.
Формула была простой:
=Время_прибытия — Время_отправления
Никаких подвохов. Никаких скрытых вычислений. Никаких округлений.
Марк проверил сырые данные.
Время отправления — 08:15.
Время прибытия — 08:19.
Разница — 4 минуты.
Всё верно.
Но —
Марк посмотрел на время отправления ещё раз.
08:15.
Он посмотрел на время прибытия.
08:19.
Четыре минуты.
Он посмотрел на длину тоннеля.
3,2 км.
Он посчитал в уме.
Средняя скорость — 48 км/ч.
Это — нормально. Это — возможно. Это — реалистично.
Но — для всех двенадцати составов?
С разной загрузкой? С разным весом? С разным состоянием рельсов? С разной погодой?
Марк покачал головой.
Нет.
Это — невозможно.
Это — подделка.
Кто-то — на той стороне — подделывал данные. Кто-то — вручную — вбивал одинаковое время для всех составов. Чтобы KPI был идеальным. Чтобы отчёт был красивым. Чтобы — всё сходилось.
Марк усмехнулся.
Ну конечно.
Конечно.
Это же Испания. Это же горы. Это же — старая узкоколейка. Там, наверное, диспетчер сидит в будке, пьёт вино и вбивает в таблицу одинаковые цифры, чтобы не напрягаться.
Марк почувствовал, как напряжение отпускает.
Конечно.
Это же — человеческий фактор.
Не мистика. Не горные законы. Не шёпоты в аудио.
Просто — ленивый диспетчер.
Марк открыл почту. Начал писать письмо Вальдесу.
«Estimado señor Valdés, he notado algunas irregularidades en los datos de los trenes que pasan por Puerto de las Ánimas. Todos los trenes muestran exactamente 4 minutos de tiempo en el túnel. Esto es estadísticamente imposible. ¿Podría verificar la situación con su equipo?»
(Уважаемый сеньор Вальдес, я заметил некоторые несоответствия в данных поездов, проходящих через Puerto de las Ánimas. Все поезда показывают ровно 4 минуты времени в тоннеле. Это статистически невозможно. Не могли бы вы проверить ситуацию с вашей командой?)
Марк нажал Отправить.
Письмо ушло.
Он откинулся на спинку кресла.
Выдохнул.
Всё нормально.
Всё под контролем.
Всё — объяснимо.
Ответ пришёл через сорок семь минут.
Марк открыл письмо.
«Estimado señor Reyes, los datos son correctos. No hay error. El túnel es… eficiente.»
(Уважаемый сеньор Рейес, данные верны. Ошибки нет. Тоннель… эффективен.)
Марк прочитал письмо.
Прочитал ещё раз.
«El túnel es… eficiente.»
Тоннель эффективен.
Он посмотрел на экран.
Это была не отговорка. Это был не ответ ленивого диспетчера. Это был — ответ человека, который верит в то, что говорит.
Марк нахмурился.
Он открыл новый лист в Excel. Начал строить график.
Ось X — дата. Ось Y — время в тоннеле.
Пятьдесят семь точек.
Все — на одной высоте.
4:00.
Марк посмотрел на график.
Прямая линия.
Идеальная.
Математически безупречная.
И — невозможная.
Марк закрыл глаза.
Это не может быть правдой.
Он открыл глаза.
Посмотрел на дашборд.
KPI — 97,2%.
Зелёные ячейки. Зелёные полоски. Зелёные цифры.
Всё — своевременно.
Всё — идеально.
Всё — сходится.
И — именно это его и пугало.
В 10:30 в офис пришла Лена.
Она подошла к его столу. С стаканчиком кофе. С вечно недовольным видом.
— Марк, ты тут? — она посмотрела на него. — Ты чего такой бледный? Не спал?
Марк моргнул.
— Привет, Лена. Нет, всё нормально. Просто — много работы.
— Вижу. — она кивнула на его монитор. — Что это у тебя? Испанские поезда?
— Да. Новый актив. Интегрирую.
— Ага. — она сделала глоток кофе. — Слушай, а ты не знаешь, почему у меня в отчёте цифры пляшут?
Марк нахмурился.
— Что значит — пляшут?
— Ну, я вчера свела баланс — всё было нормально. А сегодня утром открываю — цифры другие. На копейки, но — другие. Я думала, что сошла с ума.
Марк посмотрел на неё.
— Какие цифры?
— Да ерунда. Вес груза на входе и на выходе. Разница в два-три килограмма. Я думала, что это погрешность весов. Но — странно.
Марк почувствовал, как что-то холодное опустилось ему на плечи.
— Лена, — он старался говорить ровно. — а ты не могла бы прислать мне эти данные?
— Да без проблем. — она пожала плечами. — Сейчас скину.
Она ушла к себе.
Марк посмотрел на экран.
Вес груза. Разница в два-три килограмма.
Он открыл сводную таблицу.
Посмотрел на колонку «Разница в весе».
Среднее — 2,8 кг.
Марк закрыл глаза.
Совпадение.
Это — совпадение.
Лена работает с другими данными. С другими маршрутами. С другими поездами.
Это — не может быть связано.
Марк открыл глаза.
На экране мигнуло уведомление.
Письмо от Лены.
Он открыл.
Прикреплённый файл. Excel.
Марк скачал. Открыл.
Посмотрел.
И — замер.
Данные Лены.
Другой филиал. Другой маршрут. Другие поезда.
Но — та же самая аномалия.
Вес груза на выходе — всегда меньше.
На два-три-пять килограммов.
Марк открыл свой файл. Посмотрел на свои данные.
То же самое.
Он открыл третий файл — из архива. Данные за прошлый год.
То же самое.
Марк почувствовал, как у него начинает кружиться голова.
Он построил график.
Ось X — дата. Ось Y — разница в весе.
Точки разлетелись по графику.
Но — не случайно.
Они — выстраивались.
В линию.
В — прямую линию.
Марк посмотрел на наклон линии.
Он был — постоянным.
Каждый день — потеря веса увеличивалась на одну и ту же величину.
На 0,03 килограмма.
Марк посчитал.
Если экстраполировать — то через три года потеря веса составит около 33 килограммов.
Через десять лет — около 110 килограммов.
Это — вес человека.
Марк откинулся на спинку кресла.
Совпадение.
Это — совпадение.
Это — не может быть связано.
Это — просто математика. Просто статистика. Просто — случайность.
Марк закрыл глаза.
В темноте за веками он увидел тоннель.
Длинный. Чёрный. Уходящий в бесконечность.
И — где-то в его глубине — что-то дышало.
Медленно.
Ритмично.
Тук-тук. Тук-тук. Тук-тук.
Марк открыл глаза.
Посмотрел на дашборд.
KPI — 97,2%.
Зелёные ячейки.
Зелёные полоски.
Зелёные цифры.
Всё — своевременно.
Всё — идеально.
Всё — сходится.
В 11:45 ему пришло письмо.
От Вальдеса.
Марк открыл.
«Estimado señor Reyes, he recibido su informe. Los datos son correctos. No hay error. El túnel es eficiente. Le sugiero que no se preocupe por las discrepancias. Todo está en orden.»
(Уважаемый сеньор Рейес, я получил ваш отчёт. Данные верны. Ошибки нет. Тоннель эффективен. Предлагаю вам не беспокоиться о расхождениях. Всё в порядке.)
Марк прочитал письмо.
Прочитал ещё раз.
«Todo está en orden.»
Всё в порядке.
Он посмотрел на экран.
И — впервые за весь день — почувствовал, как что-то — крошечное, невидимое, почти неуловимое — начало меняться.
Не в данных.
Не в цифрах.
А — в нём самом.
Марк медленно, очень медленно, выдохнул.
Он посмотрел на дашборд.
На зелёные ячейки.
На красные.
На KPI.
И — почувствовал.
Не страх.
Не тревогу.
А — понимание.
Что-то — очень не так.
Что-то — очень плохо.
Что-то — очень страшно.
Марк открыл новый лист в Excel.
Начал писать.
Не формулы.
Не макросы.
А — список.
1. Аномалия со временем (прибытие раньше отправления).
2. Аномалия с весом (потеря 2,8 кг в среднем).
3. Аномалия с тоннелем (ровно 4 минуты для всех составов).
4. Странные комментарии в коде VBA.
5. Странные звуки в аудио-записях.
6. Странные слова Вальдеса («У гор свои законы»).
7. Странные галлюцинации (силуэт в шляпе).
8. Странные совпадения (данные Лены).
Марк посмотрел на список.
Восемь пунктов.
Восемь аномалий.
Восемь — необъяснимых вещей.
Марк добавил девятый пункт.
9. Ощущение, что за мной наблюдают.
Он посмотрел на список.
Девять пунктов.
Девять — необъяснимых вещей.
Марк закрыл глаза.
Это не может быть правдой.
Это — не может быть связано.
Это — просто совпадения. Просто усталость. Просто — стресс.
Марк открыл глаза.
Посмотрел на список.
И — тихо, почти шёпотом — произнёс:
— Incidencia.
Инцидент.
За окном, сквозь шум дождя и гул офиса, ему показалось — или это было на самом деле? — что он услышал другой звук.
Низкий. Утробный. Ритмичный.
Тук-тук. Тук-тук. Тук-тук.
Звук колёс по рельсам.
Но рельсов здесь не было.
Марк снял наушники.
Тишина.
Только дождь. Только гул кондиционера. Только стук клавиатур.
Он пожал плечами.
Усталость. Просто усталость. Просто — слишком много данных за один день. Просто — слишком много испанского. Просто — слишком много всего.
Он снова надел наушники. Вернулся к файлам. Начал писать второй запрос испанским диспетчерам — более настойчивый, более формальный, на идеальном деловом испанском.
Estimados colegas,
He recibido su respuesta, pero las discrepancias persisten. Necesito una verificación más detallada de los datos. ¿Podrían enviar los registros originales de los sensores?
(Уважаемые коллеги, я получил ваш ответ, но расхождения сохраняются. Мне нужна более детальная проверка данных. Не могли бы вы прислать оригинальные записи с датчиков?)
Он нажал Отправить.
Письмо ушло.
Марк посмотрел на часы. 12:23. До обеда — ещё тридцать семь минут.
Всё шло по плану.
Всё было под контролем.
Всё сходилось.
В 14:02 ему пришёл ответ.
Короткий. В три строки. Без подписи.
«Registros originales no disponibles. Los datos son correctos. No hay error. El tren llega a tiempo.»
(Оригинальные записи недоступны. Данные верны. Ошибки нет. Поезд прибывает вовремя.)
Марк прочитал письмо. Прочитал ещё раз.
«Registros originales no disponibles.»
Оригинальные записи недоступны.
Он посмотрел на экран.
Это была не отговорка. Это был не отказ. Это был — ответ человека, который боится.
Марк нахмурился.
Он открыл дашборд.
Посмотрел на ячейку с составом 412.
Ячейка была зелёной.
Своевременно.
Он посмотрел на состав 413.
Тоже зелёная.
Своевременно.
Марк медленно, очень медленно, выдохнул.
За окном дождь усилился. В наушниках, которые он забыл выключить, диктор произносил новую фразу.
— La puntualidad es clave. La puntualidad es clave. La puntualidad es clave.
(Своевременность — это ключ. Своевременность — это ключ. Своевременность — это ключ.)
Марк снял наушники.
Положил их на стол.
Посмотрел на экран.
И — впервые за весь день — почувствовал, что что-то — крошечное, невидимое, почти неуловимое — начало меняться.
Не в данных.
Не в цифрах.
А — в реальности.
Конец ознакомительного фрагмента.
Текст предоставлен ООО «Литрес».
Прочитайте эту книгу целиком, купив полную легальную версию на Литрес.
Безопасно оплатить книгу можно банковской картой Visa, MasterCard, Maestro, со счета мобильного телефона, с платежного терминала, в салоне МТС или Связной, через PayPal, WebMoney, Яндекс.Деньги, QIWI Кошелек, бонусными картами или другим удобным Вам способом.
Вы ознакомились с фрагментом книги.
Для бесплатного чтения открыта только часть текста.
Приобретайте полный текст книги у нашего партнера:
Полная версия книги
Всего 10 форматов

