我第一个跨出大门,半眯着眼睛适应沙漠的阳光。尽管已快到下午3点了,太阳还是那么明亮,那么炙热。一阵热风袭来,弄皱了我的裤腿和衬衣。
我把头戴式耳麦上的话筒对准嘴巴,然后说:“博比,你听到没有。”
“我听见了,杰克。”
“看到图像没有?”
“看到了,杰克。”
查理·戴文波特笑着出来,他说:“你知道吗,里基,你真是一个大笨蛋。这你知道吗?”
我听到里基的声音从头戴式耳麦中传来,“别说了。你知道我不喜欢恭维话。专心干活吧。”
梅接着从里边出来。她的肩上挎着一个双肩包。她对我说:“去取同位素。”
“它们重吗?”
“装它们的容器重。”
这叫,大卫·布鲁克斯出来了,洛西紧跟在他身后。她踏上沙土地时做了一个鬼脸,“哎哟,好烫!”她叫道。
“对呀,听我说,你会发现沙漠往往都这样烫。”查理说。
“少说废活,查理。”
“我才不会在你身上白费工夫呢,洛西,”他打了了一个嗝。
我忙着观察地平线上的动静,但是什么也没有看见。那些汽车停放在大约50码之外的一个停车棚内。停车棚的尽头是一幢安装着狭小窗户的方形白色混凝土建筑。那就是库房。
我们开始朝库房走去。
洛西问:“那地方有空调吗?”
“有。”梅说,“不过里边仍然很热。它的隔热效果不行。”
“它是密封的吗?”我问。
“实际上不是。”
“那就是说,没有密封,”戴文波特说着,哈哈大笑起来。他对着头戴式耳麦问:“博比,现在的风力多大?”
“17节。”博比·伦贝克回答说,“很强的风力。”
“这风什么时候能停下来?日落以后吗?”
“很可能吧。还有3个小时。”
我说:“时间够了。”
我注意到,大卫·布鲁克斯什么也没有说,只是朝着那幢建筑艰难地行进。洛西紧跟在他的身后。
“可是你无法确定,”戴文波特说,“我们全都可能被烤焦的。任何时候都有可能的。”他又笑了起来,他笑的方式使来气。
里基说:“查理,你干吗不闭上你的臭嘴?”
“你干吗不出来让我闭上呢,大孩子?”查理说,“怎么啦?你的静脉被鸡屎给堵上啦?”
我说:“集中注意力吧,查理。”
“嘿,我是集中的,我是集中的。”
大风刮着沙土,在地上形成一层褐色烟雾。
梅走在我身旁。她看着远处的沙漠,突然说:“我想看一看那只兔子。如果你们想走,你们先去吧。”
她转向右边,走向兔子尸体。我和她一起去,其他人变为一个小组,跟在我们后面。看来大家都想待在一起。风力仍然很强。
查理问:“你为什么想看它,梅?”
“我想检查一点东西。”她一边走,一边戴上手套。
头戴式耳麦嘎的响了一声。里基问:“请你们谁告诉我情况究竟怎么样了?”
“我们去看那只兔子。”查理说。
“为什么要看?”
“梅想看它。”
“她以前已经看过了。伙计们,你们在外边,暴露在危险中。我才不会那样慢慢闲逛的。”
“没有谁在闲逛,里基。”
这时,我能够看见在远处的兔子了,滚动的沙尘使它模糊不清。过了片刻,我们全都站在了兔子尸体前面。大风把尸体吹成了侧卧姿势。
梅蹲下来,使它背朝着天,然后拨开了尸体的胸腔。
“奇怪。”洛西说。
我吃惊地发现,暴露在外的兔肉不再光滑,不再呈粉红色。它的各个部分变得粗糙了,一些部分看上去似乎被擦刮过。而且,它覆盖着一层乳白色的膜。
“看来它好像在酸液中浸泡过。”查理说。
“对,确实像。”梅说。她说话的声音使人觉得恐怖。
我看了一下手表。所有这一切都是在两个小时之内发生的。“它怎么啦了?”
梅已经掏出了故大镜,正在俯身仔细观察那动物。她四处检查,快速地移动放大镜。她说:“有的部分被吃掉了。”
“吃掉了?被什么东西吃的?”
“细菌。”
“等一等,”查理·戴文波特说,“你认为是Theta-d细菌干的,你认为是大肠杆菌在吃它?”
“我们能快就会知道的。”她说。她把手伸进随身携带的小袋,取出了几个装着无菌拭子的玻璃试管。
“不过,它死亡的时间还很短。”
“已经够长了,”梅说,“还有,高温加快了细菌的生长速度。”她用拭子一根接着一根地涂抹动物尸体,然后将拭子分别放进不同的玻璃试管中。
“那么,Theta-d细菌的繁殖肯定非常迅速。”
“在良好的营养来源条件下,细菌会迅速繁殖的。进入对数生长期后,它们每两三分钟就增长一倍。我认为这里出现的就是这种情况。”
我说:“那么,如果真是这样,它意味着集群——”
“我不知道它意味着什么,杰克。”她立刻说。她看了我一眼,微微地摇了一下头。那意思很明显:现在别说了。
但是,其他的人却被搪塞过去。
“梅,梅,梅,”查理·戴文波特问:“你是说,集群杀死了兔子是为了吃掉它?是为了喂养更多的大肠杆菌,最终是为了制造更多的纳米集群?”
“我可没有这么说,查理。”她的声音镇定,几乎是安慰性的。
“可是,你是那样看的,”查理继续说,“你认为,集群消耗哺乳动物组织以便进行繁殖——”
“对。那是我的看法,查理。”梅小心翼鬟地放好拭子,站了起来,“但是,我已经提取了培养细胞组织。我们把它们放在卢氏琼脂糖中培养,看一看会出现什么情况。”
“我打赌,如果我们一个小时以后再回来看,这种白色的东西肯定全没了,我们会在兔子身体表面看到黑黑的一层。新的黑色纳米微粒。用不了多久,就会产生足够的微粒来形成一个新集群。”
她点了点头:“对,我也这么认为。”
“这样说来,那就是野生动物在附近绝迹的原因了?”大卫·布鲁克斯说。
“是的。”她用手背把一缕头发梳理好;“这已经持续了一段时间了。”
大家沉默了片刻。我们围着兔子的尸体站着,背对刮得呼呼响的大风。那尸体正在被迅速消耗,在我的想像中,我几乎看见了它在我眼前被吞噬的情景,一种实时画面。
“我们最好除掉那些可恶的集群”查理说。
我们转过头,向停车棚走去。
大家都不说话。
没有什么可说的。
我们朝前走着。一些在沙地上跳动的小鸟突然从乔利亚仙人掌下飞了起来,在我我们面前叽叽喳喳地叫着旋转。
我对梅说:“不是说没有野生动物吗,但是这里有小鸟?”
“看来真的有。”
那一群小鸟旋转回来,在距离我们100码之外落了下来。
“可能它们太小了,没有被集群看上眼,”梅说,“它们身上没有多少肉可吃。”
“可能吧。”我觉得有可能存在别的原因,但是,为了要弄清楚那一点,我得检查一下密码。
我躲开阳光的照射,进了盖着波纹瓦的停车棚,顺着成排摆放的汽车,走向库房大门。库房门上贴着警示标志——储有核放射、危险生物制品、有害生物制剂、微波、烈性爆炸品、激光射线。
查理说:“你明白我们为什么把这些东西放在外面了吧?”
我到了门口时,文斯说:“杰克,有你的电话。我转接给你。”
我的手机响了。很可能是朱丽亚打来的。
我打开手机盖子:“喂?”
“爸爸?”是埃里克的声音,他用他心烦时惯有的声调讲话。
我叹了一口气:“是的,埃里克。”
“你什么时候回来呀?”
“我无法确定,儿子。”
“你回来吃晚饭吗?”
“恐怕不行吧。喂,有什么问题吗?”
“她简直讨厌透了。”
“埃里克,告诉我是什么问题——”
“埃伦姑姑一直和她粘在一起,这不公平。”
“我现在有事,埃里克,所以直接告诉我——”
“为什么?你在忙什么呀?”
“直接告诉我出了什么问题,儿子。”
“算了吧,”他说,显得不高兴了,“如果你不回来,那没有关系。你到底在什么地方呢,在沙漠里吗?”
“对。你怎么知道的?”
“我和妈妈说了。埃伦姑姑带我们上医院去看她。这不公平。我不想去,她逼着我去的。”
“嗯,嗯。妈妈好些了吗?”
“她要出院了。”
“她的检查全完了吗?”
“大夫要她留下来,”埃里克说,“可她想出院。她的胳膊上了石膏。就这样啦。她说其他一切都没有问题。爸爸?我为什么得按埃伦姑姑说的去做呢。这不公平。”
“让我和埃伦说吧。”
“她不在这里。她带着尼科尔出去买新衣服去了,是尼科尔演出用的。”
“你和谁在家里?”
“玛丽亚。”
“好吧,”我说,“家庭作业做完了没有?”
“还没有呢。”
“那么,快去做吧,儿子。我要你在晚饭之前完成家庭作业。”这样的话直接从做父亲的嘴里冒出来,确实令人吃惊。
这时,我已经到了库房门口。我看了一下那些警告标识。有几个我不懂,比如,一个由四个颜色各不相同的正方形构成的钻石形状的符号,每个正方形里都有一个数字。
梅开了锁,走了进去。
“爸爸?”埃里克哭了起来,“你什么时候回来嘛?”
“我不知道,”我说,“我希望明天。”
“好吧:你肯定吗?”
“肯定。”
我能够听见他哧哧地用鼻子吸气的声音,然后是呼的一声——那是他在用衬衣擦鼻涕。我告诉他,如果他想,他可以过些时候再给我打电话。他似乎好了一些,说了声“好吧”,然后是“再见”。
我挂断电话,走进库房。
库房内部被分为两个大的储藏室,室内的四周围着货架,中间也摆放着成排的货架。混凝土墙壁,混凝土地面。第二间储藏室有一扇门,还有一扇便于卡车卸货的卷帘门。炙热的阳光透过木框窗户照射进来。空调轰鸣,但是——正如梅刚才所说——储藏室里仍然很热。
我随手关上门,查看了一下门上的密封条。它是普通的挡风雨条。这个地方肯定不是密封的。
我沿着货架往前走,货架上摆放的盒子里是装配机械需用的配件和实验室用品。第二间储藏室里有更多的常用物品:清洁剂、厕所纸、肥皂、麦片,还有两个塞满食品的电冰箱。
我转身向着梅:“同位素在哪里?”
“那边。”她领着我绕过一组货架,来到混凝土地上的一个钢制盖子前。
盖子的直径大约有3英尺。它看上去像是一个埋在地下的垃圾筒,中间安装了一个电子显示器和小型键盘。梅一条腿跪下,快速输入密码。
盖子吱的一声开了。
我看见了一架扶梯,它通向一个圆形钢制秘室。
同位素保存在不同尺寸的金属容器中。显然,梅能够一眼看出它们里面装了什么,因为她说:“我们有硒-172。我们用这种吗?”
“可以。”
梅开始顺着楼梯往下爬。
“你停下来行不行?”储藏室的一角,大卫·布鲁克斯从查理·戴文波特身边往后一跳。查理手里拿着个喷洒清洁剂的大瓶子,他正在测试它的下压式喷嘴,喷得大卫浑身是水。看来他是故意那么干的。“把那个鬼东西给我。”大卫说着,夺过了瓶子。
“我觉得它能行,”查理和蔼地说,“不过,我们还需要一个遥控装置。”
洛西在第一间储藏室里问:“这行不行?”她拿起一个闪闪发光的圆筒,它的上面荡着几根金属丝。“这不是螺线管式继电器吗?”
“是的,”大卫说,“不过,我们怀疑它是否能够产生足够的力量来挤压那个瓶子,它上面标有额定功率吗?我们需要大一点的。”
“你可别忘了,还需要一个遥控控制器,”查理说,“否则,你得站在那里,自己动手去喷那鬼东西。”
梅从下面上来,扛着一个沉重的金属筒。她走到洗涤槽前,伸手取下一瓶草黄色液体,她戴上厚厚的椽胶手套、开始将同位素混入那种液体中。洗涤槽上的射线监视器响了起来。
头戴式耳麦里传来了里基的声音:“你们忘了么东西没有?即使你们有遥控装置,你们怎样把它喷牺到集群中?因为我觉得,集群是不会在那里待着不动,等着你们去喷洒的。”
“我们会找到某种东西去吸引它们。”我说。
“比如说哪种东西?”
“它们被那只兔子吸引了。”
“我们没有兔子。”
查理说:“里基,你知道吗,你是一个很消极的人。”
“我只是告诉你们事实而已。”
“谢谢你让我们分享想法。”查理说。
查理和梅一样,看见了这一事实:里基做每一件事情都是慢吞吞的。他似乎想让那些集群继续活下去。那样干是设有意义的。但是,他的行为就是如此。
我本应告诉查理关于里基的一些情况,但是,带着头戴式耳麦讲话,说出的话每个人都能听见。这是现代通讯不利的一面:每个人都可以监听。
“喂,伙计们,”这是博比·伦贝克的声音,“情况怎么样?”
“我们有眉目了。有什么问题吗?”
“风力变小了。”
“现在是多大?”我问。
“15节。从18节降下来的。”
“那仍然是强风,”我说,“我们一切正常。”
“我知道。我只是想告诉你们。”
洛西在另一间储藏室里说:“用铝热剂如何?”她的手里端着一个摆放着拇指大小金属管子的塑料盘子。
“动那东西你得小心,”大卫说,“它一定是修建时剩下的。我猜,他们采用的是铝热剂焊接。”
“但是,它有什么作用?”
“铝热剂是铝和铁的氧化物,”大卫解释说,“它燃烧时产生很高的温度——高达3,000度——而且光线非常强,不能用肉眼直接观察。它可以熔化钢来进行焊接。”
“我们有多少那东西,”我问洛西,“因为我们今天夜里可以派上用场。”
“那里有四箱。”她从盒子里抽出了一个管子。“那么,你怎样把它们点燃呢?”
“小心一点,洛西。外面是镁质包装。一点点热源就可以把它点燃,”
“甚至火柴也会吗?”
“那样做就会毁掉你的手。最好使用照明火把,使用某种带有引线的东西。”
“我明白了。”她说着,绕过角落不见了。
那一台辐射探测仪仍然在咔嗒、咔嗒地响着,我转身看一下洗涤槽。梅已经关上了同位素钢筒的盖子,她正把草黄色液体往一个洗涤剂瓶子里倒。
“嘿,伙计们,”又是博比·伦贝克的声音。“我发现了一些不稳定的气流。风力在12节上下波动。”
“好的,”我说,“我们不需要听到每个微小变动的情况,博比。”
“我观察到某种不稳定的情况,如此而已。”
“我觉得我们现在还好,博比。”
不管怎样,梅还得需要几分钟时间。我走到一台计算机工作站前,开启了机器。屏幕亮了,出现了供选择的菜单。我大声说:“里基,我可以把集群编码放在这台屏幕上吗?”
“编码?”里基说。他的声音显得很惊慌,“你要编码干什么?”
“我要看一看你们做了些什么。”
“为什么?”
“里基,看在上帝的份上,我到底能不能看?”
“你当然可以看;所有的编码改动全都在斜线Code目录中。它需要用户口令。”
我键入指令。我发现了那份目录。但是,我没有获得授权进入。
“口令是?”
“口令是l-a-n-g-t-o-n,全部小写。”
“好的。”
我键入口令。我正在目录中查看一份程序修改清单,其中的每次修改都标明了文件大小和日期。那些文件很大,这意味着它们都是集群机制的其他方面的程序。因为用于微粒自身的编码应该不多——只有几行,可能只有8至10千字节。
“里基。”
“是我,杰克。”
“微粒编码在哪里?”
“它不在那里吗?”
“妈的,里基。不要再糊弄我了。”
“喂,杰克,我又不负责文件的档案管理——”
“里基,这些是工作文件,不是档案。”我说,“告诉我在什么地方。”
他停顿了一下“应该有个子目录斜线C-D-N。它存在那里。”
我往下翻动,“我看到了。”
在这个目录了中,我发现了一个文件清单,里面的文件都很小。修改大约是在6周以前开始的。没有过去两周的修改记录。
“里基,你过去两周中没有修改过编码?”
“对,大概是两周吧。”
我打开最近的文件。“你们写了高层次的小结吗?”
当初这帮人在我手下工作时,我总是要求他们用自然语言写出程序结构的小结。查看它比查看编码中的文件更快。而且,当他们按要求进行简短的文字小结时,他们常常解决逻辑问题。
“应该在那里。”里基说。
在屏幕上,我看见:
/* Initialize */
For j=1 to L x V do
Sj=0 /* set Initial demand to 0/
Eed For
For i=1 to z do
For j=1 to L x V do
aiJ=(state(x,y,z)) /* agent thresholdparam */
aij=(intent(Cj,Hj)) /*agent intetion fill */
Response=O /* begin agent response */
Zone=z(i) /* intitial zone unlearned by agent */
Sweep=l /* activate agent travel */
Eed For
Eed For
/* Main */
For kl=1 to RVd do
For tm=1 to nvz do
For e=1 to J do /* tracking surrounds */
aij=(intent(Cj,Hj)) /* agent intetion fill */
aij (state(x,y,z)) /* agent is in motion */
aikl=(filed(x,y,z)) /* track nearest agents */
我浏览了—下,想找出他们是如何修改的:后来,我滚屏进入实际编码,看它执行的情况。但是,重要的编码不在那里。整套微粒行为被标志为对象调用,那个文件名称是“compstat-do”。
“里基,”我问,“‘compstat-do’是什么文件,它在哪个位置?”
“应该在那里。”
“它不在。”
“我不知道。可能它被编译了。”
“听我说,这样对我没有帮助,对吧?”经过编译的编码是无法读的,“里基,我要看那个倒霉的模块,有什么问题?”
“没有问题。只是我得找一找。”
“好吧……”
“你们回来后我就找。”
我瞟了一眼梅:“你看过那编码没响?”
她摇了摇头。她脸上的表情好像在说:那种事情根本不可能发生,里基将会找出更多借口,继续把我避开。我不理解这是为什么。我在那里的目的就是给他们提供编码方面的咨询。那是我的专长所在。
在另外一间储藏室里,洛西和大卫正在搜那些货架,寻找无线电继电器。他们一无所获。
查理·戴文波特在储藏室的另一侧大声放屁,接着大叫声:“嘿!”
“哎呀,查理。”洛西抱怨道。
“人不该把东西憋在肚子里,”查理说,“那会弄出病来的。”
“你才把我弄出病来了。”洛西说。
“哦,抱歉。”查理举起手来,那是一个亮晃晃的金属玩意。“那么,我想你不需要这个遥控压力阀。”
“什么?”洛西说着,转过身体。
“你在开玩笑吧?”大卫说着,走过去看。
“这上面的额定压力是20磅/平方英寸。”
“那应该工作良好。”大卫说。
“如果你不弄坏的话。”查理说。
他们拿着阀门,走到洗涤槽前;梅的手上戴着厚厚的橡胶手套,还在那里灌装液体。她说:“让我干完……”
“我在黑暗中会发光吗?”查理说着,冲着她咧嘴一笑。
“只有你的臭屁会发光。”洛西说。
“嘿,有人已经那样做了。特别是当你用光照着它们的时候。”
“哎呀,查理。”
“臭屁是甲烷,这你知道。燃烧时冒出深蓝色的宝石般火焰。”他说着哈哈大笑起来。
“你能自我欣赏,我感到高兴,”洛西说,“因为没有人这样做。”
“哎哟,哎哟,”查理说着,用手捂着胸口,“我要死了,我要死了。”
“不要异想天开。”
我的头戴式耳麦嘎的响了一声。“喂,伙计们?”又是博比·伦贝克的声音:“风力刚刚降到6节。”
我说:“知道了。”我转身对着大家,“我们结束吧,伙计们。”
大卫说,“我们在等梅。然后,我们再安装这个阀门。”
“我们回到实验室去安装。”我说。
“不过,我只是想确定——”
“回到实验室去干。”我说,“收拾东西,伙计们。”
我走到窗户前,朝外看;沙漠上的风仍旧吹得杜松丛不停地摇晃,但是,地面上已经看不见滚动的沙尘了。
里基的声音从头戴式耳麦中传来:“杰克,带着你那一帮人离开那里。”
“我们正在往回撤。”我说。
大卫·布鲁克斯一本正经地说:“伙计们,在确知阀门可用于这瓶子之前,我们不应该离开这里——”
“我看我们最好走吧,”梅说,“不管干完没有都该走了。”
“那有什么好处?”大卫说。
“收拾东西,”我说,“别说了,立刻收拾东西。”
博比通过头戴式耳麦说:“4节,而且还在下降。快速下降。”
“我们走吧,都走。”我说。我赶着他们朝库房门走。
这时,里基说:“不行了。”
“什么?”
“你们现在无法走了。”
“为什么?”
“因为太晚了。它们在这里了。”