Нуматака влезе в помещението на телефонната централа на собствената си компания. Всички входящи обаждания се приемаха от една-единствена телефонистка, обслужваща „Corenco 2000“ — терминал за двайсет линии. Жената беше заета, но при влизането на Нуматака стана и се поклони.
— Седни! — отсече той.
Тя се подчини веднага.
— Днес получих обаждане в пет без пет на личната ми линия. Можеш ли да разбереш откъде ми позвъниха? — Нуматака не можеше да си прости, че бе пропуснал да се поинтересува по-рано.
Телефонистката изплашено преглътна.
— На тази централа нямаме инсталирана система за идентифициране на обаждащия се, сър. Но бих могла да се свържа с телефонната компания. Сигурна съм, че те ще могат да помогнат.
Нуматака не се съмняваше ни най-малко, че телефонната централа би могла да помогне. В ерата на цифровите връзки анонимността бе нещо забравено. Телефонните компании можеха да кажат точно кой се е обаждал и колко време е продължил разговорът.
— Направи го! — нареди той. — И ми съобщи веднага щом научиш.
Сюзан седеше сама във „Възел 3“ и чакаше трейсърът й да свърши. Хейл бе решил да излезе навън за глътка свеж въздух — решение, за което му бе благодарна. Странно, обаче самотата във „Възел 3“ не й носеше никаква утеха. Сюзан се улавяше, че не може да извади от главата си новината за връзката между Танкадо и Хейл.
— Кой ще пази пазачите? — прошепна тя. Фразата бе изместила останалите й мисли. Насили се да прогони натрапчивите думи от главата си.
Сети се отново за Дейвид. Надяваше се да е добре. Още й бе трудно да повярва, че е в Испания. Колкото no-скоро намереха ключа и приключеха тази история, толкова по-добре.
Седнала в тишината, тя загуби представа за времето. В един момент се сепна и се запита колко ли е седяла така. Два часа? Три? Погледна през стъклената стена към безлюдната зала на „Крипто“ и пожела проклетият терминал най-сетне да даде сигнал за край. Но във „Възел 3“ продължаваше да цари мъртва тишина. Слънцето вече залязваше. Флуоресцентното осветление в тавана се включи със съскане. Сюзан усещаше, че времето изтича.
Отново погледна прозореца на трейсъра и се намръщи.
— Хайде, моля те. Имаше толкова време… — Сложи ръка върху мишката и щракна курсора в прозореца за състояние на програмата. — Я да видим колко време се мъчиш?…
Цифровият часовник на трейсъра много приличаше на този на TRANSLTR — трябваше да показва часовете и минутите изтекло време след стартиране на програмата. Точно това очакваше да види. Но видя нещо съвсем различно и кръвта й спря във вените.
...ТРЕЙСЪРЪТ ПРЕКЪСНАТ
— Трейсърът прекъснат?! — ахна тя. — Но защо?…
Обхвана я внезапна паника. Тя разтревожено запрелиства данните, търсейки в кода на програмата си възможните причини за прекратяване на работата на трейсъра. Но не намери нищо. Излизаше, че трейсърът бе прекратил работата си, защото така бе „решил“. Но за Сюзан това можеше да означава само едно — по някаква причина в програмата й се бе появил бъг.
Сюзан гледаше на бъговете като на най-влудяващата страна на компютърното програмиране. Поради факта, че компютрите стриктно изпълняват машинните инструкции в предписания ред, понякога дори най-невинните на пръв поглед грешки можеха да имат поразителен ефект. Прости програмни грешки като използване на точка вместо запетая биха могли да сринат работата на сложна система. Сюзан помнеше интересната история около възприемането на термина „бъг“. Тя беше свързана с първия компютър на света, „Марк 1“, лабиринт от електромеханични вериги, построен през 1942 в лаборатория на Харвардския университет. Един ден компютърът показал неизправности и никой не могъл да разбере причината. След дълги часове търсене лабораторният техник открил причината на проблема — забелязал, че между контактите на едно реле имало молец, който правел „късо“. От този момент компютърните неизправности били наричани „бъгове“.
— Нямам време за това — изохка Сюзан.
Намирането на бъг в програма е процес, който може да отнеме дни. Трябваше да бъдат прегледани хиляди редове програмен код, за да се забележи дребна грешка, същото като да се прегледа енциклопедия за една-единствена печатна грешка.
Сюзан разбираше, че има само един практически шанс да стартира трейсъра отново. Знаеше, че е почти сигурно, че трейсърът отново ще се натъкне на същата грешка и ще прекрати работата си. Алтернативата бе грешката да се търси систематично, а за това нямаха време нито тя, нито Стратмор.
Но в мига, в който стартира наново програмата и се зачуди каква ли ще се окаже грешката, осъзна, че нещо не се връзва. Та тя бе използвала същия този трейсър миналия месец без никакви проблеми. Как така изведнъж бе развил бъг?
Докато се чудеше какво изобщо става, се сети за нещо, което й бе казал Стратмор: „Опитах се да изпратя копие на твоя трейсър… През цялото време ми връщаше безсмислени данни“.
Думите натрапчиво се въртяха в главата й: „… връщаше безсмислени данни“.
Хм. Тя критично наклони глава. Възможно ли бе? Връщал е данни?
Но ако Стратмор е получавал някакви данни от трейсъра й, значи той очевидно е работел. А данните са изглеждали безсмислени, предположи тя, защото началникът й е въвел грешен низ за търсене. Това нямаше никакво значение — трейсърът е работел!
Сюзан се досети, че има още едно възможно обяснение защо трейсърът е прекратил работата си. Програмите можеха да прекратят изпълнението си не само заради програмни грешки — понякога имаше и външни причини: резки промени в захранващото напрежение, частици прах по печатните платки на компютъра, проблеми с окабеляването. Поради прецизната настройка на хардуера във „Възел 3“ до момента Сюзан не се бе замисляла за тази възможност.