Обложка Магия требует рефакторинга

Магия требует рефакторинга

Олег

0% прочитано
Стандартный
Олег

Магия требует рефакторинга

Глава 1

Системный сбой

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

- Осколки! Свежие осколки, огненные, ледяные, гарантия до первого дождя! Подходи, не стесняйся, берёшь два - третий в подарок!

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

- Так, - сказал Виктор вслух. Голос тоже был не его, ниже и с хрипотцой. - Спокойно. Это белая горячка. Нормальная такая, добротная белая горячка, я читал, у неё есть стадии. Сейчас она кончится, я проснусь, и мне станет легче.

Горячка не кончилась. Мимо прошла женщина с корзиной, в которой что-то шевелилось, и посмотрела на него так, как смотрят на подозрительный мешок, оставленный посреди дороги. Из подвального окошка напротив тянуло горячим железом. По стене соседнего дома шла надпись, выведенная углём в человеческий рост: "Стекла не бьём, они сами". Виктор не понял, что это значит, и решил, что вряд ли хочет понять. Он перевёл взгляд на бутылку. Бутылка была пуста, но на дне, в тонком слое стекла, лежала капля. Синяя. Не с краской, а именно светом, живым, плотным, как капля воды, внутри которой кто-то включил крошечную лампочку. Она едва заметно пульсировала. Виктору вспомнился индикатор на роутере, который мигает, когда интернета нет, но устройство очень старается. Он поднёс бутылку к глазам. Капля качнулась, как будто посмотрела на него в ответ. Виктору это не понравилось, и он засунул бутылку за верёвку, заменявшую пояс. Стекло было холодным. Подняться удалось со второй попытки. Улица оказалась переулком, настолько узким, что вывески с обеих сторон почти касались друг друга. Дома хаотично лезли вверх нагромождениями этажей, подвалы уходили вниз, в них горели огни не похожие на свечи. Перед лавками на ящиках лежали какие-то камушки, тускло мерцающие в сумерках. Над головой, на кованом кронштейне, висел фонарь. Пламя в нём дрожало, гасло и вспыхивало снова. И пока Виктор на него смотрел, с пламенем стало происходить что-то странное. Вокруг фонаря проступила надпись. Не буквы в воздухе, не светящийся шрифт, а нечто более упорядоченное. Строки, отступы, вложения. Они не висели, а как будто были там всегда, просто только сейчас у него наконец включилось зрение, которым можно их прочесть. Смысл складывался сам, как складывается чужой код, когда ты открываешь файл и вдруг понимаешь, что тут происходит: Если наступили сумерки, зажечься. Иначе погаснуть. Проверять каждые семь вдохов. И ниже, мелко, по-хозяйски, второй блок с тем же самым условием, только без отступа. Виктор моргнул. Строки не исчезли.

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

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

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

Сзади раздался хохот.

***

Их было трое. Они вывалились из-за угла плечом к плечу, как делают только очень уверенные в своей безнаказанности люди. На них были короткие тёмные плащи с серебряными воротниками, и воротники явно стоили больше, чем весь переулок вместе с лужей. Самый высокий нёс посох. На навершие посоха сидел кристалл размером с кулак, он искрил: щёлкал, выплёвывал мелкие золотые звёздочки, как гирлянда, у которой вот-вот сгорит предохранитель. Звёздочки падали на мостовую и гасли. Виктор прижался к стене, чтобы пропустить их. Он вообще был за то, чтобы пропускать людей с палкой в руках. Не помогло. Тот, что шёл слева, споткнулся о что-то невидимое и ввалился в Виктора всем весом. Виктор упёрся лопатками в стену. Студент отлетел, ухватился за друга, выругался и обернулся с лицом человека, которому мир только что нанёс личное оскорбление.

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

Тишина на мгновенье оглушила - казалось само время остановилось на миг. Трое молодых людей смотрели на него с той смесью изумления и счастья, с какой дети смотрят на таракана, который сам вылез на стол.

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

У Виктора мелькнула мысль, что они не были злыми. И это его озадачило больше всего. Злых он умел читать. А эти были пьяными, молодыми и скучающими, и самая страшная сила во вселенной в таком сочетании не требует ни приказа, ни повода.

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

Виктор поднял ладони. Жест вышел сам, широкий, примирительный, из тех, которыми успокаивают разъярённого заказчика.

- Господа студенты, давайте без…

Посох описал в воздухе короткую дугу. Студент выговорил что-то нараспев, пафосно и немного невпопад, вроде "Искра, зри цель мою, да не обойдёт она"… Виктор не успел дослушать. Потому что всё, что студент проговорил и показал руками, вдруг повисло между ними. Это был код. Грубый, перегруженный, написанный так, как пишут люди, которые не понимают, что делают, но уверенно вызывают чужую функцию. Сверху шла строчка с названием, помпезно длинным и, кажется, не имевшим отношения к делу. Ниже три параметра. Цель: тот, на кого смотрит заклинатель. Длительность: пока хватит энергии. Сила: уровень эмоций в заклинателе. Виктор прочитал третью строчку и почувствовал, как внутри него ёкнуло что-то очень старое, профессиональное.

- Вы с ума сошли, - прошептал он. - Вы же берёте значение из эмоций. Без проверки. Без границ. Вы пьяны, вы злы, оно вам сейчас насыплет столько, что…

Из кристалла вырвался белый жгучий росчерк и пошёл прямо ему в грудь. Времени размышлять не было. И, как оно и бывает в таких случаях: мир стал вязким, строчки поплыли перед глазами, как в замедленном кадре, и Виктор понял, что он смотрит на переменную. Просто переменную. Значение лежало в ней, как в коробке, и коробку можно было открыть. Он не думал, как это делается. Он просто потянул что-то внутри себя, нечто вроде мускула, о существовании которого не подозревал, ухватил это значение, злость, расплавленную и острую, как битое стекло, и вместо него вложил первое, что пришло в голову. Тепло. Печка в деревенском доме. Плед. Кружка, которую держишь обеими ладонями. Динамически типизированная система съела подмену, не поморщившись. Искра ударила его в грудь и расплылась. Не больно. Совсем не больно. Тёплая волна прошла по рёбрам, по рукам, и даже холод булыжника, с которого он недавно поднялся, отпустил. Виктор стоял и дышал. Из носа потекло что-то горячее и солоноватое. Он вытер губу, посмотрел на пальцы, красное. Голову сжало, как обручем, и звон в ушах взял высокую ноту.

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

Повисла пауза.

- Это что было? - спросил его товарищ. - Искра Назидания, - растерянно ответил высокий. - Должна была… ну… Должна была жечь. - Она греет, - сказал третий и осторожно потрогал воздух возле Виктора. - Прямо мягко греет. Как кошка. - Посох барахлит, - быстро пробормотал высокий. - Я же говорил, надо в ремонт. Они его вечно недокалибровывают. - Нет, - возразил другой, и в тоне его голосе было что-то нехорошее, подозрительное. - Он что-то сделал. Я видел. Ты что сделал, смерд?

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

- Входной параметр поправил, - ответил он. - Что? - воскликнули все трое. - Параметр. Входной. Там было значение, оно было неправильное. Я его… ну… заменил. - Что заменил? - спросил высокий. - Что такое параметр? - спросил другой. - Это на языке смердов, - решил третий. - Он матерится. Это всё равно что "чтоб тебе пусто". - Нет, он издевается, - ответил высокий, но уже без прежней уверенности. Посох в его руке громко щёлкнул, выплюнул золотую искру и пискнул. Все трое вздрогнули. - Это народная техника, - оправдался Виктор, чувствуя, что говорит что-то опасное, но остановиться не мог. - Старинная. Дедовская. Очень… местная.

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

- Посох барахлит, - повторил высокий твёрдо. - Барахлит, - с облегчением подтвердили остальные. - Пошли отсюда. У меня от этой жары плащ к спине прилип.

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

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

***

- Давно я такого не видел, - произнёс кто-то рядом.

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

- Чего не видел? - хрипло спросил Виктор. - Чтобы Искру Назидания пережили с улыбкой. - Я не улыбался. - Улыбался, - спокойно ответил хозяин лавки. - Чуть-чуть. Уголком рта. Сразу видно, что не от радости.

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

- Как звать? - Виктор. -Не наше имя. - Издалека, - подтвердил Виктор. Это было единственное правдивое слово, которое он смог вставить в разговор. - Оно и видно. - Хозяин кивнул, как будто получил подтверждение чему-то, о чём давно думал. - Идти есть куда?

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

- Нет, - ответил он. - Так я и думал. У меня подвал. Сухой. Почти. Крысы вежливые, не кусаются, если не лезть. Кормить буду раз в день. Взамен таскаешь ящики, моешь, чистишь, делаешь что скажу. Работа тяжёлая, предупреждаю сразу. Спина к утру будет не твоя. - Она и так не моя, - пробормотал Виктор. - Чего? - Говорю, согласен. А какие условия? Ну, график, выходные, испытательный срок?

Хозяин лавки посмотрел пристальнее чем раньше.

- Тут тебе не Резиденция Канцелярии. С утра до вечера. Ночью спишь. Всё. - Понял, - сказал Виктор. - Очень гибкий график.

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

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

- А это что? - Тара, - сказал Виктор. - Пустая? - Пустая.

Хозяин ещё секунду смотрел на бутылку. Потом перевёл взгляд на лицо Виктора и ничего не сказал. Только чуть кивнул, будто что-то про себя отметил и решил отложить на потом. Внутри лавки пахло железом, воском и пылью. По стенам стояли полки с осколками, которые светились мягко и неровно, как угли под золой. Над каждой полкой, Виктор уже видел это, висела своя строчка. Короткие, жёсткие, с тремя-четырьмя условиями. Всё это было так тесно, так привычно и так нелепо одновременно, что ему захотелось сесть прямо на пол и смеяться, пока не заболят рёбра. Или плакать. Он пока не решил. Лестница вниз была крутая и скрипела под каждым шагом. Хозяин шёл впереди, неся масляную лампу, самую обычную, без всяких строчек. Виктор отметил это с глубокой, искренней благодарностью.

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

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

- Ладно, - прошептал он. - Утром разберёмся.

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

Глава 2

Ошибка в синтаксисе

Двор лавки был устроен как бухгалтерская ошибка: вроде бы небольшой, а мусора в нём помещалось больше, чем на всей улице. Виктор мёл его уже второй час и пришёл к выводу, что мусор здесь не накапливается, а воспроизводится. Стоило смести кучу к воротам, как из переулка тут же приезжала новая: щепки, кожура, перья, осколки чего-то стеклянного, а иногда и тускло-серые крошки, которые хрустели под метлой, как пересохшие чипсы. Утром хозяин ткнул пальцем в метлу у стены, потом показал в направлении двора и ушёл вглубь лавки, не объясняя, что именно считается результатом. Хорошо позавтракать Виктору тоже было не суждено. Ему выдали ломоть хлеба, твёрдый, как лицензионное соглашение, и кружку воды, в которой что-то плавало. Метла была из тех, что делают не для работы, а из принципа. Прутья торчали во все стороны, черенок оброс занозами, и каждая из них, судя по всему, успела составить собственное мнение о Викторе. Лицо ныло. Левая скула распухла так, что левый глаз видел мир немного свысока. Над двором висело низкое жёлтое небо, а за стеной, в Старом Районе, уже что-то гудело и орало: кто-то торговал, кто-то обманывал, и по голосам было не разобрать, где кончается одно и начинается другое. Он мёл и наблюдал. Это было единственное, что он умел делать хорошо. Через низкий забор, там, где доски разошлись на ладонь, был виден соседний двор. Там тоже подметали. Вернее, не подметали. Рыжий подмастерье лет шестнадцати, с ушами, которые жили собственной жизнью, стоял посреди двора, держал метлу за самый конец, как держат удочку, и бормотал. На шее у него болтался на шнурке жестяной кружок размером с монету. В середине кружка светился осколок кристалла, мутный, цвета разбавленного чая. Метла двигалась сама. Она подрагивала, шарила прутьями по земле, неторопливо ползла вперёд и сдвигала сор в кучу. Двигалась она бодро, но как-то скорбно. Если бы метлы умели ходить на работу, эта шла бы на ненавистную. Виктор перестал мести и посмотрел на кружок по-другому. Так, как смотрел вчера на искру, летевшую ему в лицо. Мир на секунду мигнул, и над амулетом, прямо в воздухе, проступили бледные строчки, написанные ни на каком языке и при этом абсолютно понятные.

Заклинание начиналось с того, что находило сор, и это было разумно. Дальше оно переходило к вещам, при виде которых у Виктора сразу заныла вторая половина лица, та, что не была разбита. Для каждой соринки оно заново пересчитывало весь двор. Потом определяло, сор ли это. Потом решало, что надо бы пересчитать ещё раз, на всякий случай. Потом три удара сердца, подмастерье даже не замечал этого, но заклинание честно ждало, ничего не делая, и это называлось, по-видимому, "для красоты". И только после этого соринка сдвигалась на шаг. Один шаг. На один шаг уходило столько вычислений, сколько Виктор тратил на сборку целого проекта.

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

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

- Чего? - спросил подмастерье. - Говорю, здорово у тебя получается, - сказал Виктор и улыбнулся той улыбкой, которую в прошлой жизни берег для заказчиков. Распухшая скула сделала из неё что-то малоприятное. - Давно у тебя эта штука?

***

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

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

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

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

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

- Пыль к пыли, сор к сору, мусор - вон со двора. Так?

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

- Подсмотрел, - прошептал подмастерье. - Ты подсмотрел. - Подслушал, - поправил Виктор. - Иди мой бочки. За конюшней. Не мои, твои, я потом проверю.

Парень ушёл, оборачиваясь через каждые три шага, как человек, у которого только что украли что-то важное, а он не понял что. Виктор уселся на перевёрнутый ящик посреди двора и положил амулет на колено. Метла стояла рядом, прислонённая к стене, и вид у неё был как у метлы, которая больше ничему не удивляется. Он начал с очевидного. Первый цикл, пересчёт всего двора для каждой соринки. Виктор разглядывал его, пока тот не стал похож на то, чем был на самом деле: на вложенный цикл, написанный человеком, который слышал о циклах, но не слышал о том, что их можно не вкладывать. Достаточно один раз посчитать, а потом пройтись по списку. Вся эта красота вычислялась за один проход. Мысленно, как правят текст пальцем по экрану, Виктор потянул строку, вынул её и положил в другое место, до цикла. Пересчёт стал разовым. Стало лучше, и что-то в голове отозвалось лёгкой тупой болью, как в мышце после первой за год тренировки. Он отложил это ощущение на потом. Дальше шла вторая итерация, та самая, "на всякий случай". Её он выкинул без раздумий. Потом три удара сердца ожидания "для красоты". Эти он выбросил с особым удовольствием, и ему даже почудилось, что амулет в руке вздохнул с облегчением. Оставался третий цикл. Он выглядел самым запутанным и самым ненужным: для каждой соринки проверять что-то, сравнивать с чем-то, возвращаться, если не то. Виктор повертел его так и сяк. Цикл проверял какую-то величину и сопоставлял её с неким порогом, и каждый раз, когда проверка не проходила, всё откатывалось на шаг назад. Выглядело это как классическая избыточность, из тех, что оставляют перестраховщики. Виктор даже не стал разбираться, что именно там сравнивается. Каждый, кто писал код достаточно долго, знает это чувство, когда строчка кажется лишней, и каждый, кто писал достаточно долго, знает, чем это обычно кончается. Он вырезал и его. Строчки над амулетом сложились заново, стройные, короткие, красивые. Виктор откинулся назад и поймал себя на том, что улыбается, и улыбка эта была уже не заказчицкая, а настоящая. Впервые за двое суток, а может, за пару лет.

- Ну, поехали, - сказал он амулету и добавил для верности: - Пыль к пыли, сор к сору, мусор - вон со двора.

***

Сначала ничего не произошло, и это было нормально. Компиляция, так сказать. Потом метла у стены дёрнулась и сама встала на прутья. Шнурок на колене Виктора натянулся, словно амулет попытался вырваться из рук. Он уже собирался сказать себе, что вот оно, победа, и можно идти мыть бочки, как вдруг понял, что слышит очень низкий звук. Не из двора. Из-за стены, из переулка, с рыночной площади. Звук, с которым в большом доме включается откуда-то снизу гигантский пылесос. Мусор во дворе поднялся. Он поднялся не кучей, как должен был, и не по одной соринке. Весь, одновременно, вертикальной стеной, как будто двор перевернули и встряхнули. Потом стена накренилась и сдвинулась к воротам, мимо ворот, сквозь забор, и из переулка донёсся первый крик. Виктор вскочил с ящика. Амулет в руке стал горячим, потом слишком горячим, потом таким, что он перебросил его из ладони в ладонь, как картошку из золы, и уронил. Амулет упал на землю, но не перестал светиться. Свет из жёлтого стал белым и принялся пульсировать, и это было плохо, это было очень плохо, потому что пульсация шла в такт вою, доносившемуся с улицы. Он выглянул за ворота. Старый Район был устроен так, что любой переулок в нём казался тупиком, а любой тупик оказывался проходом. Сейчас перед воротами лавки расстилалась короткая кривая улица с лотками по обе стороны: тут торговали осколками на вес, там сомнительными зельями в сомнительных бутылках, чуть дальше человек в засаленном колпаке продавал "настоящие" кристаллы, у которых, наверное, был настоящий только цвет. Всё это сейчас двигалось. Нет, не лотки. Лотки стояли. Двигалось то, что лежало на улице, под лотками, между ними, на мостовой: всё, что можно было назвать мусором. Кожура, окурки, пыль, листья, обрывки верёвок, собачьи следы, если бы они были материальны, кости, чьи-то потерянные пуговицы. Всё это срывалось с места, закручивалось в воронку над серединой улицы и тянулось вверх, выше крыш, выше флагов на шестах, выше чего угодно. Воронка была серая и толстая, как столб. Она гудела.

- Демон! - закричал кто-то слева. - Не демон, - возразил кто-то справа с сомнением. - Это Орден. Орден, говорю тебе, чистки начались. - Какие чистки, у меня кристалл улетел!

Продавец в засаленном колпаке лежал на животе, обеими руками вцепившись в свой лоток, а лоток, судя по всему, готовился взлететь вместе с ним. Торговка зельями прижимала к груди три бутылки и пятилась в подвал, который по причинам, ведомым только ей, не имел двери. Какой-то тип в плаще, явно из тех, кто торговал осколками не по прейскуранту, нырнул под телегу, и телега тут же загудела, как колокол, потому что воронка нащупала в ней что-то подходящее, а именно все гвозди. Виктор стоял посреди этого всего с метлой в руке (он не помнил, как она к нему вернулась) и в его голове вертелась очень чёткая и ясная мысль: "Нет границы. Я удалил границу". Проверка, которую он вырезал. Цикл, возвращающий всё на шаг назад, если соринка оказывалась за порогом. Это была не избыточность. Это была область действия. Двор. Три шага вокруг метлы. Пространство, в котором заклинание имело право работать. А теперь двора не было, порога не было, и область действия называлась "всё, что движется или может быть заставлено двигаться, в радиусе, ограниченном только чьим-то терпением".

- Хорошо, - произнес он вслух. - Хорошо, хорошо, хорошо.

Он метнулся назад во двор. Амулет лежал на земле, белый, уже чуть-чуть дрожащий от напряжения, и Виктор попытался вызвать строки заклинания, чтобы вернуть вырезанное, но голова ответила глухой болью, словно он потянулся в пустую папку. Один раз. Второй. Строки мигали, расплывались. Что-то внутри предупреждало, что ресурс не бесконечный и что за каждое такое усилие придётся платить. А платить было, откровенно говоря, нечем. "Убить процесс", в его голове крутилась только одна мысль. "Найти хоть какой-нибудь способ убить процесс". Он схватил ведро, стоявшее у стены. В нём была вчерашняя вода, застоявшаяся, тёмная. Он вылил её на амулет, но вода испарилась, не долетев до земли, с коротким злым шипением.

***

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

- Это что? - спросил он очень ровно.

Никто не ответил. Продавец в колпаке медленно, с огромным достоинством, подтянул ноги.

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

- Не наша, - быстро сказал кто-то. - Не наша, - согласились ещё трое.

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

- Беги в крепость к капитану Грозному. Лично, не через писаря. Скажи так: Старый Район, торговый ряд, магический вихрь выше крыш, природа неизвестна, причина неизвестна, виновных не обнаружено. Повтори. Молодой повторил. Без запинки, как будто всю жизнь только и ждал, когда ему доверят такую фразу. Потом посмотрел на воронку, сглотнул и побежал. Виктор смотрел ему вслед и думал о многом сразу. О том, что слово Грозный здесь, судя по скорости, с какой бежал мальчишка, не было ни прозвищем, ни шуткой. О том, что виновных не обнаружено - пока ещё было чистой правдой, и стоит ли ей подпирать забор в ожидании, когда она перестанет ей быть. О том, что у него в руке метла, а на земле за спиной остывающий амулет с чужим семейным словом, и что оба эти предмета внезапно превратились в улики. Старший взгляд скользнул по ряду домов. Скользнул по воротам, за которыми прятался Виктор. Задержался на секунду, на одну лишнюю секунду. Виктор опустил глаза и начал мести. Серьёзно и сосредоточенно, как человек, у которого нет в мире других забот. Грязный, чужой в чужой одежде, с разбитой скулой и метлой. Одним словом, никто. Сверху на мостовую, вперемешку с пылью, мягко упал одинокий носок. Столб рухнул, и над улицей на секунду повисла такая тишина, что слышно было, как в подвале без двери торговка зельями считает бутылки. Затем он бросил метлу и побежал прочь.

Глава 3

Вызов к жрецам

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

- Ну наконец-то.

Так говорят увидев маршрутку, которая опоздала на сорок минут, но всё-таки показалась вдали. Виктор ждал, что его ударят. Его не ударили. Третий легионер, совсем молодой, пахнущий дёгтем и луком, молча взял его за запястья и защёлкнул на них кандалы: два железных кольца на короткой цепи. Металл был холодным ровно секунду. Потом по коже побежало щекотное тепло, и Виктор увидел кандалы изнутри тем зрением, которое никогда не спрашивало у него разрешения. Это снова была программа. Восемь строк, вьющихся по ободу гравировкой, которая для любого другого человека выглядела бы просто узором. "Держать". "Давить волю носителя". Третья строка повторяла вторую слово в слово, будто автор потерял место, на котором остановился, и начал абзац заново. Ни одного пояснения. Ни одной пометки на полях. Даже "здесь был я".

- Не дёргайся, - сказал молодой, хотя Виктор не дёргался. - Они от этого злятся. - Кто? - Кандалы.

Виктор открыл рот, чтобы объяснить, что у железа не бывает настроения, а бывают только условия, и тут же закрыл. Лекцию стоило приберечь для более благодарной аудитории. Дальше была телега с брезентом, пахнущим мокрой шерстью, и дорога, которую он запомнил плохо: большой чужой город, мелькнувший между бортами и не давший себя рассмотреть, потом мост. Река Ветров оправдывала название. Ветер пытался сдуть с телеги всё, что на ней лежало, включая остатки достоинства арестанта, и к середине моста преуспел. Бутылка за поясом на каждой выбоине стукала по бедру, тихо и укоризненно, и Виктор старался не думать о капле, которая светилась на её дне. Он вообще старался не думать. Получалось плохо. Мозг, лишённый занятий, принялся сам составлять опись: сбежал от представителя власти, - раз; нарушил магический закон, - два; вихрь, - три. В графе "обстоятельства, смягчающие вину" стоял честный прочерк. К собору приехали утром. Свет был серый, как вода после мытья посуды, и здание проступало в нём медленно, по частям, словно картинка, грузящаяся по плохому каналу: сперва шпили, потом контрфорсы, потом горгульи, чёрные от копоти и очень довольные собой. Вокруг не было ни нищих, ни торговцев. Только люди в серых плащах, которые смотрели на телегу так, как смотрят на грязь, занесённую на чистый пол. Дверь была железная, и над ней что-то вырезали. Судя по тому, как легионеры перестали разговаривать, это было предупреждение. Они сняли шлемы. Один поправил пояс. Те самые люди, которые в переулках Старого Района держались как хозяева, сутулились теперь, как школьники у кабинета директора. - Рот не открывай, - шепнул молодой, и в шёпоте впервые не было ни злости, ни насмешки. - Тут всё слышат. - Кто?

Молодой посмотрел на него с такой жалостью, что стало ясно: на этот вопрос лучше не получать ответа. Внутри оказалось холоднее, чем снаружи. Пар от дыхания висел в воздухе и не желал рассеиваться. Колонны уходили вверх, как стволы каменного леса, и где-то в вышине смыкались ветвями. В витражах стояли длинные фигуры с протянутыми руками, а у их ног на коленях люди помельче, и свет, который лился на этих людей сквозь цветное стекло, был дорогим, чистым и правильным. Тех, кто чинил, на витраже не было. Вдоль стен за железными решётками поднимались стеллажи со свитками, до самого свода, в полумрак, где тускло горели лампы. Запретная библиотека. Виктор шёл мимо, закованный, под конвоем, и смотрел на неё с жадностью, которой не ожидал от себя в такой ситуации. Это была документация. Возможно, единственная на весь мир. Пройти мимо неё в кандалах оказалось обиднее всего остального утра. Зал кончился помостом в три ступени. На помосте стояло каменное кресло, а в кресле сидел Верховный Жрец Валентин. Ему можно было дать как шестьдесят, так и девяносто. Белая кожа, белая борода, белые пальцы на навершие посоха, и сквозь запястье казалось что просвечивала кость. Двое молодых жрецов стояли на полшага позади. Один держал старика под локоть, и тот терпел это с видом человека, терпящего сыпь. Слева от кресла, на железной стойке, лежал кристалл размером с гусиное яйцо, бледно-голубой, с мутной сердцевиной. От него в воздух расходились нити света, такие тонкие, что заметить их можно было, только если смотреть чуть мимо. Перед помостом нити смыкались в прозрачную пелену, похожую на масляную плёнку на луже. Барьер. Валентин не сделал ни одного жеста: руки лежали на посохе, губы не двигались. Он просто сидел, а стена стояла. Легионеры довели Виктора до черты, которую видели, кажется, только они, и остановились.

***

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

- Подведите.

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

- Имя. - Виктор, - сказал Виктор и, подумав, добавил: - Свободный.

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

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

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

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

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

- Орден Чистого Дара берёг чистый поток от скверны, когда твои предки ещё гоняли коз по склонам. Ты коснулся того, что принадлежит небесам. Руками, в которых земля.

Отдел информационной безопасности, подумал Виктор. Только вместо регламента костёр. Он посмотрел на руки. Земля там и правда была, вместе с цепью.

- Я просто чистил улицу, - ответил он. Фраза была так же плоха, как в переулке. - Просто, - повторил Валентин. Слово он держал двумя пальцами, как только что свиток. - Тогда тебе нетрудно будет показать. Покажи, каким образом ты исказил чистый поток. Здесь, под сенью собора, при свидетелях. Каждое слово. Каждый жест. Виктор ощутили ловушку. Ни слов, ни жестов у него не было: он просто увидел, что где лежит, и переложил. Любое честное объяснение начиналось со слов, которых в этом зале не существовало, а заканчивалось, скорее всего, костром.

- Я убрал лишние повторения, - сказал он, выбрав из всех вариантов самый безопасный. - Повторения. - В заклинании уборки. Там один и тот же кусок шёл три раза подряд, без изменений. Я решил, что это…

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

- …лишнее. - Лишнее, - Валентин закрыл глаза. Когда он открыл их, в них не было гнева, только бесконечное терпение учителя, которому в сотый раз приходится объяснять очевидное. - Троекратное повторение есть ритм молитвы, смерд. Каждое звено - бусина на нити благодарения. Ты счёл молитву излишеством. Это не молитва, подумал Виктор. Это одна и та же строка три раза. Но вслух не сказал: у него оставалась капля инстинкта самосохранения, и в это мгновение он к ней прислушался.

- Я не хотел ничего портить, - произнес он. - Ты хотел улучшить, - ответил жрец. - Это хуже.

Слово повисло в холодном воздухе. Виктор не сразу понял, что именно его царапнуло. Улучшить. Сам он такого слова не произносил. Для человека, у которого магия есть воля богов и ничего больше, глагол оказался слишком точным. Он решил, что ему показалось. Ему многое казалось в последнее время. Молчание затянулось. Валентин ждал, и в ожидании было что-то хищное. Легионер за спиной переступил с ноги на ногу, звякнул и тут же замер. Виктор искал, на чём остановить взгляд, чтобы не смотреть старику в глаза, и нашёл. Барьер. Он не собирался разглядывать его нарочно. Так смотрят в окно на допросе. Но каждые семь ударов сердца пелена перед помостом вздрагивала, чуть-чуть, на волос. Как битый пиксель на мониторе: один раз заметишь и уже не можешь не видеть.

***

Честное слово, он не собирался. Но зрение включилось само, как включается привычка у курильщика при виде зажигалки, и нити света развернулись перед ним как схема. Три кольца. Внешнее: отражать всё, что движется быстрее шага. Среднее: гасить огонь. Внутреннее: не пускать чужую волю. Условия были вложены друг в друга, как коробки в коробки, и работа, надо признать, была хороша. Основу кто-то когда-то писал руками человека, который умел. Это раздражало особенно. Кристалл питал всё это ровной, экономной энергией, и вот тут, у самого основания, где нить уходила от стойки в камень помоста, Виктор нашёл то, что вздрагивало. Канал. Раз в семь ударов он открывался, чтобы подпитать барьер, и не закрывался. Кусок силы, взятый из кристалла, уходил мимо пелены, в пол, в камень, в никуда. Каждые семь ударов понемногу. Кристалл не успевал пополняться, и разницу кто-то доплачивал. Виктор перевёл взгляд на старика. Белая кожа, белые пальцы, кость, просвечивающая сквозь запястье, молодой жрец, придерживающий под локоть. Он тут же отругал себя за поспешный вывод, но вывод уже сидел в голове и никуда не собирался. А ведь он понимал, что надо промолчать. Правда понимал. Любое слово об этом означало признать, что зал, витражи, эти колонны-стволы и все, кто стоит на коленях под цветными картинками, держатся на чём-то, что можно прочесть, как чужой файл. Но существует сорт людей, и Виктор принадлежал к нему всю жизнь, которые, увидев в чужой работе очевидную ошибку, не могут промолчать, даже если за это грозит костёр.

- У вас утечка, - сказал он.

Тишина стала плотнее.

- Что? - спросил Валентин, отвлекшись от своих мыслей. - Вот здесь. - Виктор указал подбородком, потому что руки были скованы. - Слева от кристалла, у основания, где нить уходит в камень. Канал открывается и не закрывается. Каждый раз. Вы теряете силу, и не туда, куда нужно, а в пол. Сам барьер сделан хорошо, не придерёшься. А вот это… - он поискал слово, не нашёл подходящего и сдался. - Это устаревший мусорный код. Причём без комментариев. Тот, кто это писал, видимо, ушёл в отпуск тысячу лет назад и забыл оставить контакты.

- Кот? - шёпотом спросил один из юных жрецов. - Тс-с, - шикнул второй. - Какой кот? - Тихо!

Виктор сообразил, что только что провёл ревью чужой работы. Перед начальством. Без запроса. В кандалах. За спиной кто-то из легионеров вдохнул так, как вдыхает человек, наблюдающий, как идущий впереди наступает на мину. Валентин не двигался. Его глаза, холодные и прозрачные, не пошли вслед за подбородком Виктора. Они пошли сами, сразу: к основанию стойки, к камню слева, в ту самую точку. Так смотрит студент, которому назвали номер строки, где он когда-то сам сделал ошибку. Виктор заметил это и убрал в дальний угол, разбираться потом, если это потом будет.

***

- Мусор, - произнёс Валентин наконец. - Ты назвал мусором волю богов. - Я назвал мусором один участок, - ответил Виктор, потому что остановиться уже не мог. - К богам у меня претензий нет. Только к реализации.

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

- Откуда ты…

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

- В темницу! - голос взлетел и сломался, как хворост. Старик сглотнул, поймал его, вернул вниз, в тот самый бас, которым, видимо, читал проповеди. - Еретика в нижние кельи. Немедленно. До выяснения обстоятельств. - Я ведь только предложил… - Никому с ним не говорить! - Посох ударил в камень, и звук разошёлся по залу, и теперь ему ничего не мешало. - Никому. Слышите? Ни слова! - Слышим, владыка, - отозвались все вразнобой.

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

- Там всего одна строка! - крикнул Виктор через плечо. - Закрыть канал, и вам станет легче, честное слово, это же…

Чья-то латная рукавица закрыла ему рот. Пахла она сыростью и железом, и ни одного возражения в ней не было. Потом был боковой проход, решётки, свитки, запретные и недостижимые, и Виктор не стал на них оглядываться. Он смотрел на собственные руки. На ободе кандалов, где восемь строк заканчивались, он вдруг заметил то, чего не заметил в телеге, потому что не дочитал до конца. Восьмая строка открывала канал и не закрывала его. Тот же пропуск. Один в один, только в железе поменьше. Копипаст, подумал Виктор. Кто-то когда-то написал это один раз, и с тех пор мир добросовестно переписывает чужую ошибку, из заклинания в заклинание, из железа в камень. Он едва не засмеялся. Легионер ткнул его в спину, лестница вниз оказалась винтовой, и Виктор едва не покатился по ним вниз.

Глава 4

Теневая сделка

Капля срывалась с потолка раз в три секунды и всякий раз попадала в одно и то же место на соломе, рядом с коленом Виктора. Он заметил это на втором часу или на третьем, и с тех пор не мог перестать считать. Три секунды. Хлоп. Три секунды. Хлоп. В мире, где есть хоть какой-нибудь стандарт частоты, по этой капле можно было бы сверять часы. Камера была размером с кладовку в панельной хрущёвке, только без швабр и с лучшей акустикой. Стены вспотели плесенью. Солома лишь изображала солому, а запах от неё шёл такой, будто на ней до него успели умереть несколько поколений крыс, причём без особых церемоний. В углу стояло ведро. Виктор решил думать о нём как можно реже. Дверь была дубовая, окованная железом, с замком размером с хорошую буханку. Он смотрел на этот замок уже давно, надеясь, что тот ему что-нибудь покажет. Не показывал. Виктор успел выяснить главное: код он видит только тогда, когда заклинание работает. Спящий замок для него был просто куском железа, а не программой. Дар оказался с ограничением, которого в рекламной брошюре не было. Впрочем, брошюры тоже не было. В затылке гудело, как от сервера в соседней комнате. Это была плата за барьер Валентина, и Виктор нехотя признавал, что цена вышла справедливая. Он перебирал варианты. Жрец сказал разберёмся, кто он такой, а у людей, которые так говорят, разбирательство редко заканчивается извинениями. Вариантов было семь, и ни один не был зелёным. Он гонял их по кругу, как гоняют упавшие тесты, будто от повторного запуска хоть один мог пройти. Хлоп. Три секунды. Хлоп. В углу, за ведром, что-то скрежетнуло. Виктор поднял голову. Каменная плита в полу, под которой, видимо, когда-то проходил сток, медленно сдвинулась. В щель просунулась рука в чёрной перчатке, потом плечо, потом голова, замотанная тёмной тканью. Фигура выбиралась из дыры в полу с достоинством человека, который знает, что достоинства в этом занятии нет, и не особенно по нему скучает. Плащ зацепился за край плиты. Фигура выругалась шёпотом, очень разнообразно и с явной практикой.

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

Голос был женский, низкий, слегка простуженный. Лицо она вымазала сажей, и в свете, который пробивался из-под двери, виднелись только глаза. Они двигались быстро: камера, ведро, Виктор, дверь, снова Виктор. Так оценивают товар, у которого могут быть скрытые дефекты.

- Я не кричу, - ответил Виктор. - Я вообще редко кричу в камерах. Не было случая накопить опыт. - Хорошо. Опыт тебе скоро пригодится в другом месте. - Она присела на корточки, не касаясь соломы. - Меня зовут Лидия. Некоторые добавляют Тень, но это для тех, кто любит красивые прозвища.

- А ты не любишь? - Я люблю, когда мне платят.

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

- После облавы в Старом Районе мои люди рассказали мне про вихрь у лавки, - продолжила Лидия. - Один видел, как ты стоял над метлой и бормотал что-то про циклы. Другой клялся, что метла после этого закончила подметать раньше, чем её запустили. Люди в таких случаях врут, но не настолько красиво. А сегодня вечером у меня в Соборе нашлись уши. Тараканы тут сытые и любопытные. - Она подняла бровь. - Мусорный код. Ты так сказал жрецу? - Я сказал это очень вежливо. - Он сломался, как печное стекло. - Это был его барьер. - Это была его гордость, - сказала Лидия. - Барьер просто лежал под ней. - Она помолчала какое-то время. - Я здесь не из сочувствия. У меня есть вещи, которые ломаются, греются и иногда взрываются. Это нелегальные артефакты, и я продаю их людям, которые не могут позволить себе легальные. Люди хотят, чтобы они работали и не убивали владельцев. Ты можешь это сделать. Исправить. Улучшить. А я сделаю так, что завтра Валентин будет искать тебя в мире, где тебя нет.

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

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

Лидия посмотрела на него так, как люди смотрят на чужую молитву: без уважения, но с осторожностью. Виктор запомнил этот взгляд. Дальше его придётся использовать.

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

Хлоп. Три секунды. Хлоп. Виктор посмотрел на дыру в полу, потом на свои плечи, чужие, широкие, крестьянские, и осторожно спросил:

- А я в этот лаз пролезу?

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

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

***

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

- Не берёт, - прошипела Лидия. Отмычка дёргалась у неё в руке, кристалл мигал, будто задыхался. - Замок старше моей бабки. Отмычка ищет шифр, а шифра нет. Он… не такой. - Шифр есть, - произнес Виктор. - Он просто не хочет, чтобы его нашли. Дай мне руку. - Зачем? - Чтобы ты держала отмычку, а я держал голову. Она у меня сейчас плохо держится сама.

Лидия секунду смотрела на него, потом молча придвинулась ближе и положила левую ладонь ему на предплечье. Рука была тёплая, жёсткая, с мозолями. Виктор тут же заметил, что рука держит чуть сильнее, чем нужно для опоры. Он добавил это в список и не стал разбираться, в какую колонку. Он потянулся к строкам. Это было странное ощущение: пальцы ничего не касались, но что-то под ними поддавалось, как мокрая глина. Он нашёл главное условие. Если слово совпадает, открыть. Иначе звать стражу. Всё остальное было обвязкой. Он заменил условие на всегда истина и сразу понял, что одной правки мало. Ниже, спрятанный за тремя слоями проверок, сидел вызов колокола. Каждое открывание отмечалось в караульной. Старые мастера любили вести журналы, наверное, потому что не доверяли ничему, что нельзя записать.

- Условие, - прошептал он. - Заменить на истину. Вызов колокола. Убрать. Нет, не комментировать, а убрать. - Это молитва? - спросила Лидия. - Это ругательство. - Хорошее. - Она сказала это очень серьёзно. - Продолжай.

Головная боль вспыхнула, острая, как щепка. Виктор моргнул, и мир на секунду поплыл. Он стиснул зубы и удержал нить. Если сейчас отпустить, придётся начинать заново, а второго раза у него может и не быть. Он вспомнил о сегментации памяти, о которой когда-то думал в подвале лавки, и мимоходом проверил, помнит ли название своей первой школы. Помнил. Значит все в порядке. Он вставил последнюю правку. Строки погасли. Железо в замке щёлкнуло глухо, будто кто-то на другом конце вселенной наконец согласился с неизбежным. Дверь дрогнула и пошла наружу, на дюйм, не больше, и замерла. Лидия выдохнула. Она всё ещё держала его за руку.

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

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

- Идём, - сказала она. - До рассвета три часа, а выход далеко.

Виктор шагнул за порог и подумал, что за дверью нет ничего сложного. Всего лишь - весь остальной Собор.

***

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

- Дай мне три секунды, - прошептал он. - У нас нет трёх секунд. - Тогда две.

Он протянул руку в сторону, туда, где луч скользил по плитам, и поймал нить. Это было как хватать рыбу за хвост: скользко и чуть жжётся. Он быстро переписал условие. Если нет печати освящённого, пропустить. Потом подумал, что это слишком грубо, и добавил ещё одно: и не отмечать. Луч дошёл до колонны. Золотой свет лёг на плиту у их ног. Виктор перестал дышать. Свет прошёл мимо, но не так, как должен был. Он обогнул их, как вода обтекает камень, и на полу остался тёмный силуэт, чёткий, как вырезанный ножницами. Два человека, прижавшихся друг к другу. Лидия, как заметил Виктор, смотрела на силуэт совершенно спокойно.

- Ну, - шепнула она. - Тень - мой профиль. - Это ошибка отрисовки, - выдохнул Виктор. - Сейчас исправлю. - Быстрее.

Один из послушников остановился. Фонарь в его руке качнулся. Он нахмурился, глядя на странное пятно на полу, и сделал шаг в сторону колонны. Виктор снова схватил нить. Боль в голове вспыхнула, как лампочка перед тем, как перегореть. Он убрал условие вообще, оставив лучу только одно правило: идти прямо, без обхода. Луч встал на место, лёг на плиты ровным золотым светом и пошёл дальше, не оставляя на полу ничего, кроме самого пола.

- Пустое место, - нахмурился послушник, пожал плечами и вернулся к спору о пирогах.

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

- Ты бледный, - прошептала она. - Это нормально. Мне вредно думать быстро. - Что-то подсказывает мне, что ты шутишь. - Нет, - устало мотнул головой Виктор.

Она посмотрела на него чуть дольше обычного, потом забрала флягу, и на этот раз её пальцы задержались на его руке на долю секунды дольше, чем требовалось. Виктор сделал вид, что ничего не заметил, и опять добавил это в список. Список рос быстрее, чем он успевал его читать. Следующий патруль они встретили уже без паники. Фонари скользили по стенам, золото ложилось на плиты, и луч, дойдя до них, шёл дальше, не вздрогнув. У Виктора внутри что-то тихо и неохотно признало, что он только что провёл самый успешный деплой в своей жизни. Обновление дошло до всех фонарей сразу. То ли послушники синхронизировали заклинания между собой, то ли сама система делала это неведомым ему способом. В любом случае, ни одного сюрприза, ни одного отката. Впервые за всё время в этом мире что-то прошло так гладко, и Виктор не мог отделаться от ощущения, что это слишком хорошо, чтобы быть случайностью. Лидия оглянулась на него через плечо и подняла два пальца. Два поворота до выхода.

***

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

- Здесь, - шепнула Лидия. - Этот двор выходит к реке. Там нас ждут.

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

- Хорошая работа, - кивнула она не оборачиваясь. - Лучше, чем я думала. - Спасибо, - сказал Виктор. - Но я бы сказал - все прошло в рабочем порядке. - В каком порядке? - Неважно.

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

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

- Это мана, - пояснила Лидия. - Немного. На три хороших заклинания или на одно очень хорошее. Такие теперь тускнеют быстрее, чем положено, и дорожают быстрее, чем тускнеют. Любопытно, правда? Дефицит у нас всегда приходит вовремя. - Она помолчала. - Береги его. - Спасибо, - поблагодарил Виктор. - Но я всё ещё не понимаю, зачем… - С этой минуты ты связан обещанием с Братством Тени.

Виктор поднял глаза.

- Я не вступаю в сомнительные организации, - ответил он. Это вырвалось само, ровно и быстро, как рефлекс. Потом он вспомнил, что даже если бы хотел, у него бы всё равно не получилось. В этом мире человеку вроде него просто не дано пройти ритуал. Ему отказали бы в праве вступать ещё до того, как он успел бы подать заявку. - Мы не организация, - возразила Лидия. - Мы обещание. У нас нет членов. У нас есть должники. - Я ничего не обещал. - Ты взял кристалл. Ты чинил мой замок. Ты пожал мне руку в камере. - Я не пожимал тебе руку! - Ты позволил мне держать твою. Для нас это одно и то же.

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

- Это нечестно, - возмутился он. - Это договор, - пожала плечами Лидия. - Честность в него не входит. Придёшь в Старый Район, спросишь, где Серая Лавка. Тебя встретят. Приведи себя в порядок. И не ешь ничего у незнакомцев. - Это совет или условие?

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

Глава 5

Негласный мастер

Река оказалась шире, чем выглядела из прохода между рясами, и пахла тиной, мокрой глиной и чем-то ещё, что Виктор предпочёл считать рыбой. Он нашёл место под ивой, где берег подмыло и корни торчали наружу, как неубранные провода под офисным столом. Натаскал сухого камыша, и удобно устроился на нем. Ночь стояла тёплая, но тело, доставшееся ему в этом мире, мёрзло по собственным причинам. Оно привыкло спать на земле и, кажется, удивлялось, что кто-то вообще ждёт от него удобства. Кристалл он положил рядом, на корень. Тот пульсировал в темноте раз в четыре секунды, бледно-голубым, и Виктор, давший себе слово не считать, считал. На шестом круге он перевернул камень светящейся стороной вниз. Стало легче: теперь пульс просто лежал на земле и подсвечивал траву. Потом он посмотрел вверх и понял, что и тут утешения не будет. Звёзд было много. Он искал Большую Медведицу, потом хотя бы Орион, потом хоть что-нибудь с ковшом, поясом или рогами, и не находил ничего. Звёзды сбивались в кучки и цепочки, но складывались в чужие рисунки. Это было похоже на чужой репозиторий без README: всё на месте, а с чего начинать читать, непонятно. Одна звезда, крупная и жёлтая, висела над излучиной реки и смотрела так, будто знала о нём больше, чем он о ней.

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

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

- Версия вторая. Отравление. Бутылка.

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

- Версия третья, нам не нужна.

Формулировать её он не стал. За ней начиналась территория, где Виктор паниковал, а паники на сегодня уже хватило, и в камере, и на суде. Он перевернулся на бок, пробормотал, что утро вечера мудренее, и поймал себя на мысли, что в его прошлой жизни эту фразу произносили в основном накануне провальных релизов. Заказчица пришла к нему во сне, как приходила наяву: без стука и с планом на двадцать страниц. Она стояла над его столом в бежевом пальто, и от пальто почему-то пахло рекой.

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

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

- Вставай, - повторила заказчица уже голосом Лидии.

Виктор открыл глаза. Над ним, на фоне белёсого неба, склонилась Лидия Тень. Ее пальцы вцепились ему в плечо, как крючки.

***

- Ты должен был прийти в Серую Лавку, - недовольно сказала она. - Вчера. - Я шёл. Река была по пути. - Река была в другой стороне.

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

- Я обошла всю округу, - продолжила она нахмурив брови. - Рыбаки у моста сказали, что под ивой лежит утопленник и разговаривает сам с собой. Они поспорили, встанет он или нет. - И кто выиграл? - Тот, кто поставил на "встанет". Он, кстати, ещё должен тебе процент. Вставай. Сегодня вечером у нас срочная работа, а до вечера ты умоешься, поешь и ни с кем не заговоришь.

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

- Ты сама сказала, не ешь у незнакомцев. - Я не незнакомец. Я твой кредитор.

Каша оказалась хорошей, и это его почему-то расстроило. Он ел и слушал, как за стеной кричат торговцы: кто-то продавал осколки с гарантией, кто-то осколки без гарантии, зато честно. Шум не прекращался ни на минуту. Он проникал сквозь стены, как запах, и Виктор к полудню научился не слышать его, как не слышат кулер в серверной. К вечеру Лидия повела его вниз. Люк прятался под бочкой с солёными огурцами, которую пришлось откатывать вдвоём. За люком оказалась лестница, потом ещё одна, потом коридор, где потолок цеплял макушку, и все триста шагов Виктор считал про себя, по привычке и от нервов. Рынок остался наверху. Он превратился в ровный гул, как будто Виктор оказался за стеной огромной машины, которая работает и работает. Мастерская была низкая, сводчатая, с побеленными кирпичами. Под сводом горели масляные лампы, и в их свете блестели наковальни, клещи, крючья с висящими клинками без рукоятей. Пахло железом, воском и палёным. У стены на лавке полулежал человек, широкий, как дверь, с серым лицом. Левый бок у него был туго перевязан, правая рука замотана мокрой тряпкой. На столе посередине, на куске грубой кожи, лежал меч.

- Это он? - спросил человек, подозрительно оглядев Виктора. - Мастер? - Мастер не любит, когда у него спрашивают, кто он, - ответила Лидия ровным голосом, в котором не было ни тени сомнения. - И не любит, когда на него смотрят во время работы. Смотри на меч. - Он на мастера не похож. - Я вообще на кого угодно не похож, - пожал плечами Виктор. - Это моё главное профессиональное качество.

Наёмник хмыкнул. Лидия бросила на Виктора быстрый взгляд, в котором читалось: "Молчать было условием". Он замолчал.

- Горит, - объяснил наёмник, обращаясь теперь к Лидии. - Сначала нормально. Потом тёплый. Потом звенит. Потом красный, как кочерга. Вчера сапог прожёг, сегодня руку. Кто бил, не скажу. А в бою он у меня гаснет через раз, и это ещё хуже, чем когда горит.

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

- Три часа, - четко произнесла Лидия. - Он уходит до рассвета. - Мне нужна тишина. - Тишины у нас нет. У нас есть Старый Район над головой.

Он кивнул и сел к столу.

***

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

- Нет. - Что нет? - встрепенулась Лидия. - Тише.

Вторая функция, судя по всему, отвечала за закалку: следила, чтобы лезвие оставалось твёрдым и не размягчалось от собственного огня. Она читала значение жар и сравнивала его с порогом. Если жа» был высоким, она считала, что клинок слишком мягкий, и добавляла ещё жара, чтобы закалить его сильнее. Но жар, который она читала, был жаром первой функции, а тот, который она добавляла, снова попадал в жар первой функции, которая видела, что его стало больше, и добавляла еще. Два модуля, одно имя и ни малейшего представления друг о друге. Они были как два отдела в одной компании, которые оба думают, что отвечают за один и тот же бюджет. Значение росло. Не быстро, но верно. С каждым циклом клинок становился чуть горячее. Когда он остывал в бою, потому что владелец уставал и подпитка падала, одна функция переставала писать, а вторая ещё некоторое время работала по инерции, и меч то гас, то вспыхивал. Всё сходилось. Гасло из-за одного, горело из-за другого, и никто в этом мире никогда не поймёт, что виновато одно и то же слово. У Виктора заныли глаза, как будто в них вставили по горячему гвоздю. Во рту появился вкус монеты. Он знал, что так выглядит цена за глубокий взгляд, и знал, что платить придётся ещё не раз. Но остановиться уже не мог, потому что на самом конце строки, у гарды, он заметил то, чего видеть не ожидал. Рядом с кодом, не в нём, а рядом, была выцарапана пометка. Мелкая, торопливая, другим почерком. Не руна и не часть заклинания. Её писали для людей. Для тех, кто придёт читать. Комментарий. Он перевёл. Это было просто: два слова на древнем наречии, которые в любом языке значат одно и то же. "Временно. Исправить". Виктор едва не рассмеялся. Если бы не боль в глазах, засмеялся бы вслух. Кто-то когда-то сидел за этим клинком, в этом мире, в котором, по общему мнению, магия снизошла от богов, и оставил себе напоминание, что надо будет вернуться и поправить. Не вернулся, как не возвращаются все. Но он знал, что это можно исправить. Он знал, что это за строки. Виктор убрал ладони. Капля воска наконец упала на стол.

***

- Мне нужен самый тонкий пуансон, - сказал он, - и молоток, который не гремит.

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

- Что ты собираешься делать? - спросила она тихо. - Переименовать переменную. - Что? - Старый обряд разделения имён, пояснил Виктор и сам удивился, как естественно это прозвучало. Кто-то когда-то объяснил ему, что в любом непонятном деле надо говорить уверенно и немного скучно. - У двух духов клинка одно имя. Они путаются. Одного нужно назвать иначе.

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

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

Он склонился над клинком, подвёл стеклянный шар, чтобы свет лампы собрался в ослепительную точку, и поставил жало пуансона у основания первой строки. Нужно было отделить вторую функцию от первой, не разрушив ни той, ни другой. Не стирать, а подписать. Дать второму жару другое имя: чуть-чуть, в одну чёрточку, в один лишний штрих. Но штрих должен был лечь так, чтобы линия не разорвалась. Один лишний миллиметр, и клинок станет просто куском железа. Или вспыхнет в руках у человека, который уже и так перебинтован с обеих сторон. Он стукнул молотком. Раз. Тонкий, чистый звук, почти звон. Сталь приняла штрих без сопротивления, и Виктор почувствовал странное, почти физическое облегчение, как будто вынул занозу из собственной руки. Второй штрих. Третий. Строка дрогнула и поменяла цвет с белого на золотистый. Потом снова побелела, но теперь она текла рядом с первой, а не поверх неё, как две реки, которые наконец нашли каждая своё русло. Виктор проверил цикл. Первая функция писала в жар, вторая писала в жар-два, и обе читали - каждая своё. Он прошёл по всему клинку глазами, строка за строкой, как проходят по коду в последний раз перед тем, как нажать кнопку. Ничего не торчало. Ничего не пересекалось.

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

Лидия взяла клинок за рукоять двумя руками и передала наёмнику. Тот взял его неуверенно, левой, здоровой рукой. Правая, замотанная, осталась на колене.

- Поддай чуть-чуть, - приободрил его Виктор. - Только чуть. Как обычно.

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

- Он не ест из меня, - сказал он наконец. - Я чувствую, он… не ест. - В этом и весь смысл, - произнес Виктор и попробовал встать. Ноги слушались неохотно. - Не пользуйся им день-два, пусть осядет. Потом можешь хоть сапоги прожигать, если хочется.

Наёмник засмеялся, коротко и хрипло, и тут же схватился за бок. Лидия смотрела не на него. Она смотрела на меч и считала. Виктор видел, как работают её глаза: это был не восторг, не благодарность, а подсчёт. Сколько стоит такой мастер. Сколько таких мечей в Старом Районе. Сколько людей с такими мечами согласятся платить. Улыбки на её лице не было, и Виктор вдруг понял, что предпочёл бы улыбку. И всё же внутри у него пело. Глупо, по-детски: на этот раз тесты прошли с первого раза. Он стоял в подвале чужого мира, с головой, набитой горячими гвоздями, и был абсолютно, неприлично счастлив.

***

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

- Тихо, - прошептала Лидия одними губами.

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

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

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

- А! — радостно воскликнул Грозный. - Ты!

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

Глава 6

Заказ от Легиона

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

- Каким образом? - прорычал Грозный.

Лицо было так близко, что Виктор разглядел каждую красную жилку в белках. От капитана несло железом, дымом, луком и тремя сутками без бани. Из носа у Виктора капнуло, и капля упала на нагрудник, прямо в свежую вмятину. Грозный этого не заметил.

- Что каким образом? - Голос вышел выше, чем Виктору хотелось.

Предплечье надавило ещё сильнее. - Вон тот клинок. На пятке номер, одиннадцать-ноль-семь. Я сам подписывал бумагу, когда его списали. Ядро выгорело дотла. Три мастера из Замка его смотрели, и все три сказали одно: на переплавку. А он у этого светится, как именинник.

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

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

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

- Лавка, - продолжил Грозный тихо. - Вихрь. Потом барьер Валентина, который у него отвалился посреди суда, как штукатурка. Теперь вот это. Либо ты самый везучий крестьянин на континенте, либо ты что-то, чего я не понимаю. А то, чего я не понимаю, я привык убирать с дороги.

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

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

Грозный молчал. Где-то в коридоре переступили с ноги на ногу звякнув латами.

- Дайте мне другой клинок, - попросил Виктор. - Мёртвый. Самый худший, какой есть. Покажу, как это делается. Руками, при всех. А потом решайте, куда меня убирать.

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

***

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

- Выбирай, - буркнул Грозный.

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

- Чей? - Мой, - поднял левую руку молодой легионер, стоявший ближе всех. Правая кисть у него была забинтована до запястья. - На учениях. Он… ну это… В руке.

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

- Он не сломался, - произнес Виктор вслух. - Он завис. Две его части ждут одна другую и стоят. Как двое в дверях. - Знаю таких, - сипло сказали из коридора. Кто-то хохотнул и тут же осёкся. - Положи на стол и убери руки, - велел Виктор легионеру. - Считай до тридцати. Вслух. Мы его сейчас усыпим и разбудим.

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

- …двадцать семь, двадцать восемь…

В висках затикало. Нос снова потёк. Виктор не стал вытирать.

- …тридцать. - Теперь бери, - сказал он и убрал руки.

Легионер не двинулся. Смотрел на клинок, как на змею, которая однажды уже его укусила.

- А если опять? - Тогда это будет другая ошибка, - ободряюще успокоил Виктор. - Старую я убрал.

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

- Следующий.

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

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

Гнев вспыхнул у Грозного на лице и тут же погас, как будто его накрыли крышкой. Желвак дёрнулся раз, другой.

- Сколько? - Хлеб. Вода. Час тишины.

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

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

- Этот правда мёртвый. Ядра нет, выгорело. Чинить нечего. Только на переплавку.

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

***

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

- Долг остаётся, - бросила она Виктору вслед. - Перепиши его на моего нового кредитора, - ответил тот обернувшись на мгновение. - Я подумаю над этим. — Она улыбнулась одним углом рта.

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

- Не оборачивайся, - спокойно произнес Грозный не поворачивая головы. — Иди рядом со мной.

Виктор ускорился и поровнялся с ним. Это оказалось сложнее, чем бежать.

- Капитан! - Один из плащей их заметил. - Капитан Грозный! Орден разыскивает беглеца из Собора. Мужчина, среднего роста… - Таких тут сто тысяч, - ответил ему Грозный. Он остановился и повернулся к ним всем корпусом, перекрыв Виктора. - Этот - мастеровой Легиона. С сегодняшнего утра приписан. - Приписан? - Плащ вгляделся поверх железного плеча. - Он похож… - Каждый второй в квартале на кого-нибудь похож. Орден вправе проверять. Подавайте рапорт. - Я… мы подадим, но… - В Канцелярию. Письменно, в трёх экземплярах. Ответят месяцев через пять.

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

- Валентин поднял Собор на ноги, - процедил он. - Ты сильно ему насолил. Это не прощают. Найдут тебя, и я потеряю мастера. Значит, - тебя не найдут. - Вы меня арестовали? — спросил Виктор. Хотел сказать мягче, но вышло как есть. - Арестовал бы. - Грозный не отвёл взгляд. - И сделал бы это снова, если бы был уверен, что ты не умеешь чинить мечи. Теперь я знаю, что умеешь.

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

- Армейский жетон. Без звания. Присяги тебе не дадут, ты не из тех, и сам знаешь. Числишься мастеровым при обозе, подчиняешься мне лично. Что сделаешь, принадлежит Легиону. Кормёжка, крыша, железо. Любое. - Жалованье?

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

- Кормёжка, - повторил он. - Крыша. Железо.

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

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

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

***

Склад стоял на краю квартала. Раньше в нём, видимо, хранили пряности: стены пропитались ими так, что от запаха перца свербело в носу. Теперь у дверей стояли двое легионеров со скучными лицами, а внутри рядами тянулись ящики, обитые железом, с выжженной на крышках ступенью. Интендант оказался тощим, с чёрными от чернил пальцами и привычкой выводить ими слова в воздухе, пока думает. Он сунул нос в бумаги, потом посмотрел на Виктора, на Грозного и снова на бумаги.

- Выдавать всё, что попросит, - приказал Грозный. - Без записи. - Господин капитан, там запас маны на полгода… - Тебе бумага нужна чтобы чихать? Выдавать!

Интендант открыл рот, закрыл, пожевал воздух и кивнул. Грозный ушёл, сказав на пороге, что обоз к Крепости выходит послезавтра - Виктор с ним. В прошлой жизни с таким доступом выдавали права администратора, а через неделю начинали злиться что работа идет медленно. Виктор оглядел ряды ящиков и почувствовал то, что, наверное, чувствует голодный в кондитерской. Он снял крышку с ближайшего. Под соломой лежали кристаллы размером с куриное яйцо, граненые, тяжёлые, тёплые, как будто в каждом спало маленькое солнце. Виктор взял один и поднёс к щели в ставнях. Глубоко, под гранями, ниже того уровня, где у кристалла бывают трещины и пузыри, сидело клеймо. Крошечный замок с тремя шпилями в кольце. Не на поверхности. Внутри, будто его вырастили вместе с камнем. Он взял второй. Клеймо. Третий. Клеймо. Четвёртый, десятый. Каждый кристалл в ящике был подписан изнутри, одинаково, до последней линии. Клеймо снаружи ставит мастер, чтобы показать, что делал сам. Клеймо внутри означает другое. Виктор знал, как это называется. Водяной знак. Серийный номер. Лицензионный ключ. Он полез в карман, нашёл кристалл, который Лидия сунула ему на выходе из Собора, и повернул к свету. Замок с тремя шпилями в кольце.

- Замковые, - прокомментировал интендант не поднимая головы. С гордостью в голосе. - Все от Синдиката. Других не бывает. - Других не бывает? - Других не продают.

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

Спасибо за чтение

Вернуться к книге