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