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