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