– Нет… Там, это…
Тилек повернулся к Эркину и тот снова упёрся в код, избежав зрительного контакта.
– Что там? – спросил Тилек нейтральным тоном, дабы не спугнуть программиста.
– Да ничего, – Эркин пожал плечами.
Физик положил отвёртку и сел рядом с другом.
– Расскажи, не держи в себе. Полегчает. По себе знаю.
Эркин притворялся, что выискивает что-то в разноцветных строчках на чёрном фоне.
– Вы расстались, что ли?
– Да у нас ничего и не было.
– Да хорош. Вижу же, что есть чувства к ней. Небось фотки её до сих пор хранишь? – Тилек надел самую безобидную улыбку, удивившись про себя, что способен на такое.
Эркин заёрзал на дорогом компьютерном кресле, которое за секунду превратилось в «стул ведьмы». Его пальцы набирали беспорядочный набор знаков, оставшись без контроля хозяина. Голова затряслась, губы приготовились оправдываться.
– Нет, у неё аккаунт закрытый… – выпалил Эркин и осёкся.
Тилек притворился, что не уловил обмолвки.
– А, точно! Она ж красавица. Вся такая недотрога. Так ты ей не говорил о своих чувствах, значит?
– Говорил, – через силу выдал Эркин.
– Кажется, припоминаю. Мне что-то рассказывали. В десятом классе на день Святого Валентина, да?
Тилек снова ощутил желание рассмеяться, но сдержался. Он помнил тот день не хуже Эркина. Он сам на долгое время превратил произошедшее в объект для шуток среди одноклассников.
После стольких откровений со стороны Тилека о его страданиях в этом несправедливом мире, Эркин не мог отказать в ответной искренности. В безвольном повиновении он разматывал свою травму. Сработали защитные механизмы, заставив Эркина говорить об этом, как о смешном и несерьёзном опыте. Он улыбался и пожимал плечами.
– Ага. Я подарил ей конфеты и цветы. Долго копил на них как дурак.
– А потом?
– Я признался ей в любви. И сделал это так, как долго представлял у себя в голове – перед всем классом. Думал, это будет красиво.
– Ты хорошо придумал.
– Да какой там. Она посмеялась надо мной. Перед всем классом.
Тилек поддался вперёд. Он извлёк из своей памяти тот досадный вечер, в котором его пьяного не впустили в клуб, проявляя на лице нечто похожее на сопереживание.
– А вот это уже не хорошо, – Тилек покачал головой.
– Я прочитал стихи о ней, которые сам сочинил. Кажется, даже учительница смеялась.
– Наверно, я прогулял тот день. Жаль, меня не было, чтобы поставить её на место, – соврал Тилек.
Эркин не смог бы проверить его слова, даже если бы захотел. Память давала ему другие воспоминания.
– Она позвонила своему парню. Он учился в другой школе. После уроков он стоял с Нурай на крыльце. Она навела на меня, и он сказал мне пойти с ним. Я бы не пошёл, но он был со своими друзьями.
– Вот он шакал! И что потом?
– Мы стояли недалеко от крыльца школы, поэтому все смотрели на нас. Он сказал не приставать к его девушке. Я хотел сказать, что я не знал о нём, но его друзья всё время меня перебивали. Они… съели конфеты, которые я всё ещё носил с собой. Цветы затоптали.
– Я же говорю, что он шакал. Он не бил тебя?
– Он в начале сказал, что бить не будет, просто поговорим. Перед уходом он посмотрел на своего друга и тот ударил меня вот сюда, – Эркин коснулся солнечного сплетения. – Я потом долго лежал на снегу. Охрана выбежала из школы, но те уже ушли. Никто из одноклассников не сказал, что произошло.
Тилек получил желаемое. Внутри он чувствовал удовлетворение, но перед Эркином исторг долгий сочувственный вздох, чтобы тот услышал.
Бессильные попытки увильнуть от воспоминаний оставили Эркина с горькой неубедительной улыбкой. Это всё, что уцелело от его защитных механизмов. Тот день в ускоренном воспроизведении повторялся в его сознании. Рука скроллировала бесконечные строки кода, пока её хозяин боролся с восставшим прошлым. Тёмный интерфейс программы жёг глаза, наполнившиеся влагой. Символы слились в размытую вязь.
Эркин поднялся, прежде чем слёзы полились и отошёл к окну. Тилек дождался тихих всхлипов и подошёл к программисту. Он положил руку ему на плечо, чтобы накинуть последнюю нить своей паутины обмана.
– То, что с тобой произошло – несправедливо. Те, кто с тобой так поступили, должны получить в тысячу раз больше страданий. Я тоже много страдал от того, что не был как все. Я тебя понимаю лучше, чем кто-либо. Я хочу помочь тебе.
– Спасибо, – Эркин вытер слёзы. – Ты мне очень сильно помогаешь.
– Я хочу помочь тебе исправить то, что произошло в тот день.
– Но это уже прошло. Что я могу сделать сейчас?
– Прошлое так и будет преследовать тебя, если ты не создашь своё будущее. Будущее, где будет справедливость для тебя.
Тилек активировал устройство, направленное на собак, щёлкнув включателем.
– Я могу усилить устройство, и оно будет действовать на людей.
– На людей?
– На несправедливых людей. На тех, кто думает, что они выше нас. Мы можем построить мир, в котором мы будем над ними.
Эркин отвернулся от окна и Тилек прочитал колебания на его лице.
– В этом мире все будут слушать нас с тобой. Ты сможешь наказать всех своих обидчиков и Нурай станет твоей.
Последний довод потряс Эркина. Его брови вылезли над очками, а глаза уставились в пол. Тилек понял, что добился своего и выключил устройство. Измученные собаки забились по углам вольера.
Тилек заполучил рычаг полного контроля над программистом. Эркин, в свою очередь, нашёл сильную мотивацию к завершению кода. За несколько дней, он написал больше, чем за всё время до этого. Впрочем, это никак не сказалось на его умениях и количество ошибок также увеличилось.
Сбои и периоды неисправности бесили Тилека, ибо в своей части за тот же период он опередил программиста. Всё чаще он срывался на своего друга, высвобождая свою сущность из-под маски дружелюбия.
Кроме этого, научные термины, предоставленные Тилеком, не помогали программисту постичь процессы внутри устройства. Между тем, физик не понимал ничего в программировании и не мог дать внятное техническое задание. Им пришлось идти из своих областей знаний вслепую, наощупь к друг другу навстречу, чтобы на месте их соприкосновения возникло завершённое устройство.
Принцип работы детали, в изначальной задумке Тилека, заключался в сканировании определённого алгоритма электрических явлений, происходящих в проводящей системе сердца.
Тилек развил это свойство сканирования. Изменил потоковое воздействие на точечное, благодаря чему стоящий рядом с гудящим устройством человек не бился в конвульсиях. Также он усовершенствовал излучатель. Теперь охват сканируемой области действовал во всех направлениях одновременно, вне зависимости от положения устройства. Эркин доделал функцию геолокации в программе, и они соединили её со способностью сканировать.
Не без постоянных сбоев в программе, спустя полсотни попыток и неприкрытых матов Тилека в адрес программиста, они осуществили это свойство. Устройство научилось находить объекты вокруг себя, а программа отображала их зелёными точками. Тилек с гордостью назвал устройство, ставшее уже полнофункциональным, «Машиной Воздаяния».
Физик мог в свободное от учёбы время заниматься Машиной, которая в разы потяжелела от дополнительных деталей. Потребление электроэнергии возросло и Тилек арендовал под офис помещение в большом безлюдном здании на краю промышленной зоны у оживлённой трассы.
Они перенесли Машину по частям вместе со всем своим оборудованием и подопытными хомяками. Эркин, ведомый своим вожделением, пропустил переводные экзамены и переселился в этот офис. Страница с профилем Нурай впредь всегда оставалась открытой на его ноутбуке.
Каждый занимался своей сферой, но уже в начале лета уровень завершённости Машины обязывал их присутствовать одновременно в офисе. Без этого разработка не продвигалась. Эркин отставал от графика. Физику приходилось направлять и подгонять своего друга до грядущего этапа, где он мог бы продолжить свою часть.
От безделья Тилек соорудил себе трон. Он водрузил своё игровое кресло на возвышенную платформу в центре офиса перед телевизором. Оттуда он отдавал команды Машине со своего компьютера. Программисту отвёл место у входа в офис.
Обустроившись с комфортом, Тилек занялся внешним видом Машины. Он заказал корпус в форме огромной вытянутой капсулы, способной вместить все её внутренности. Блестящий корпус состоял из разбираемых частей для облегчения предстоящих модернизаций.
В новом офисе Тилек занял в этой паре доминантную позицию. Все его обращения превращались в приказы. Любая ошибка Эркина получала обильную порцию ругательств. И как полагается любому подчинённому, программист выходил виноватым во всем, даже если сам физик допустил ошибку.
– Тут какой-то баг, – сказал Эркин, не отрываясь от экрана.
– Да сколько уже можно? – вспылил Тилек и бросил часть обшивки. – Так исправь, что ли, быдлокодер.
– Нет, баг в Машине.
– В смысле?!
– Когда мы подключили функцию GPS и синхронизировали с Машиной, она всё находила. После того, как мы перенесли её, настройка сбросилась. И это не из-за моей программы.
Тилек вдохнул, желая возразить, но знание своего детища всё прояснило.
– Это не баг, а фича. Я изначально разрабатывал аппарат для сканирования, который мог бы в реальном времени найти сердце по ритмам его электрических импульсов. Поэтому он не прикреплён к конкретному местоположению и везде будет считать себя центром мироздания.
– Начало координат?
– Да.
– А сейчас-то эта фича зачем?
– Просто сделай так, чтобы он нормально синхронизировался! – приказал Тилек и отозвался грязным матом об интеллектуальных способностях программиста.
На такие выпады, Эркин отвечал недовольным молчанием. Тилек судил по себе и гадал, не означает ли это, что его друг задумал восстать против него.
Он уже имел полное управление, поскольку программист не умел включать Машину вручную. А задача на программное включение Машины не ставилась. Но физик этим не ограничился и приказал перевести управление программой только на его компьютер.
Требование поставить одному Тилеку известный пароль, посчитал слишком открытым и глупым. На всякий случай, незаметно для Эркина он перед каждым уходом из офиса вручную понижал диапазон воздействия своей Машины до хомяков.
Для любого добавления новых деталей или улучшений, Эркин набирался соответствующих знаний и кусков кода на сайтах для программистов. Медленный прогресс и постоянные ошибки приводили Тилека к навязчивой мысли о замене программиста. Но каждый раз он приходил к пониманию, что тогда другому человеку нужно будет раскрыть для чего предназначена Машина. И поиск нового соратника снова откладывался до дня безошибочного функционирования программы.
За несколько дней до установленного раздражённым физиком дедлайна, программист внёс все заявленные функции. Программа переводила широты и долготы на электронной карте в понятные для Машины координаты в её видении пространства. Зону сканирования пришлось сузить до области, показываемой в окне карты программы, чтобы она исследовала исключительно заданное место.
Это ограничение взора Машины порой сбивалось, и она сканировала всё вокруг. Ошибка с ограничением выделялась красным цветом в консоли, выводя физика из себя. Эркин бежал исправлять эту ошибку, отмалчиваясь от оскорблений Тилека.
Физик отыскал на карте здание, в котором находился их офис. Машина отсканировала часть здания, увиденное на карте. Она нашла определённые источники электрических явлений, согласно нынешней настройке – сердца хомяков. Машина передала эту информацию программе, в интерфейсе которой грызуны представали в виде зелёных точек на чёрном фоне в отдельном окне.
Тилек так и не смог разобраться с консолью программы. Эркин сохранил длинные команды поиска на карте, выбора целей, а также запуска воздействия в отдельном текстовом файле с пояснениями на компьютере управления. Но Тилек путался и за это попадало программисту.
За день до дедлайна программисту пришлось упростить управление до привычных физику команд на клавиатуре.
– Пусть «Ctrl+F» начинает поиск! – потребовал физик. – Сколько времени займёт добавление этой кнопки?
– Минут сорок, – ответил Эркин полушёпотом.
– Сколько?! У тебя минута!
Эркин запыхтел, передавая мимикой выполнение сложной работы. Физик подгонял его со своего места.
Три с половиной часа пыток и устройство перезапустили с нужной функцией. Тилек нажал на «Ctrl+F», и Машина выполнила поиск в месте, показанном на карте. Консоль, прикрепленная к правому краю интерфейса программы, записывала все команды и операции.
Следом физик потребовал, чтобы зелёные точки выбирались кликом мыши по одному. А сочетанием клавиш «Ctrl» и «A» выбирались все точки, попавшие во взор Машины в окне поиска.