屏幕右下角的时间显示凌晨三点十七分。
陈澈没关灯。三十瓦的LED吸顶灯惨白的光线下,三块屏幕各自亮着诡异的光。左边那块跑着有限元分析,一个城中村自建“公寓楼”的模型正在被红色警告线反复切割;中间那块是聊天窗口,王总油腻的脸挤在视频框里,背景是工地铁皮房的劣质墙板;右边那块屏幕上,微信对话框每隔几分钟就跳动一下。
“爸这个月药费单据发你了。”
“一共四千三。”
“生活费什么时候转?”
“……”
陈澈没回。他盯着左边屏幕上的模型,那是个从扫描件逆向出来的怪物——承重柱被偷偷抽掉了三根,楼板开洞大得能开进卡车,顶上还违章加盖了两层轻钢结构的鸽子笼。红色的警告框像恶性肿瘤一样在模型表面蔓延,每个框里都写着触目惊心的专业术语:节点不满足、位移超限、配筋不足、抗震验算失败。
“陈工,”视频框里的王总把烟头按在一次性纸杯里,发出滋啦一声,“你就给句痛快话。这楼,会不会塌?”
陈澈的手指停在键盘上。他是国家一级注册结构工程师,同济大学土木工程硕士,毕业就在省院干了十年。他本该在窗明几净的设计院里画正规的施工图,盖章,签字,对自己设计的每一根钢筋负责。而不是在凌晨三点,对着一个明显要塌的违章建筑,回答“会不会塌”这种问题。
但他需要钱。父亲的肺癌药不能停,每个月四千三;房贷八千二,已经逾期两个月;分居的妻子李薇要生活费,虽然她没明说,但那条“什么时候转”后面藏着的失望和疏离,隔着屏幕都能渗出来。
“王总,”陈澈开口,声音像砂纸磨过铁锈,“按《混凝土结构设计规范》和《建筑抗震设计规范》,这楼存在多处严重违规。我的专业建议是……”
“别跟我扯规范!”王总猛地拍桌子,摄像头都晃了晃,“我就问,照现在这样,能不能住人?会不会马上出事儿?”
陈澈沉默了。他最小化警告框,调出计算书,把几个关键参数——混凝土标号、钢筋强度、荷载取值——偷偷改到规范下限,重新点下“运行计算”。进度条缓慢爬行,像垂死病人的心电图。
右边屏幕,微信又跳了一下。
“?”
就一个问号。陈澈知道李薇的脾气,这个问号等于最后通牒。
进度条走到头。警告少了一半,但还有几个顽固的红色框钉在模型的关键部位。陈澈关掉软件,重新打开一个干净的文档,开始打字。
“王总,”他说,声音平静得自己都陌生,“如果对抽柱部位做局部粘钢加固,对加层部分改用轻钢结构,并严格控制使用荷载……短期来看,在无台风、无暴雨、无地震的正常使用条件下,结构安全风险……相对可控。”
“相对可控”。这是行业黑话,是行走在灰色地带的工程师们心照不宣的密语。它意味着“理论上不会立刻塌,但随时可能塌,别问我什么时候,也别出事了来找我”。它是一张用专业术语编织的免责声明,一张遮羞布,一块投向深渊的石头,听不见回响就算过关。
视频那头,王总笑了,露出被烟熏黄的牙:“这就对了嘛!陈工是明白人。报告就这么写,‘经复核,在采取相关措施后,可满足安全使用要求’。钱马上打你。”
视频挂断。屏幕暗下去,映出陈澈自己的脸——三十五岁,头发乱得像鸟窝,眼袋深重,胡子拉碴,瞳孔里倒映着三块屏幕的冷光。他看起来不像个工程师,像个在网吧包夜熬了三天三夜的瘾君子。
手机震动。银行入账通知:20000元。比他当年在省院干一个月还多。他该高兴,该松口气,该觉得这操蛋的日子还能往下过。但他只觉得胃里一阵翻搅,有什么东西顺着食道往上涌,酸涩,灼热,带着金属锈味。
他抓起桌边的铝制酒壶,灌了一大口。廉价威士忌的灼烧感暂时压下了那股恶心。壶身上映出扭曲的倒影,像个狰狞的鬼脸。
微信又响了。李薇发来一张照片,是父亲躺在病床上的样子,瘦得脱了形,身上插着管子。下面跟着一行字:“医生说,新药一个疗程六万,医保不报。你说怎么办?”
陈澈盯着那行字,盯了很久,久到屏幕自动熄灭了。他在黑暗里坐着,听见自己粗重的呼吸,听见窗外城市永不熄灭的噪音,听见血液冲上太阳穴的轰鸣。
怎么办?他也不知道。
第二场电子坟场
二手市场在城市东郊,以前是片物流仓库,后来仓库搬走了,就变成了城市消化系统的末端。报废的汽车、拆剩的家具、过时的电器、散发着不明气味的破烂,在这里堆积、腐烂、等待被压成方块,运往下一个轮回。
陈澈是来找显卡的。他那台老工作站的显卡快不行了,跑个复杂点的模型就花屏。新的买不起,只能来这淘二手。空气中弥漫着机油、铁锈和尘土的味道,几个摊主蹲在成堆的废品后头,眼神浑浊,像在打量另一堆废品。
他转了半天,在一个堆满废旧电脑的摊位前停下。摊主是个老头,穿着看不出颜色的工装,正拿着螺丝刀拆一块主板。
“有专业显卡吗?”陈澈问,“Quadro或者Radeon Pro都行。”
老头抬头瞥他一眼,没说话,用螺丝刀指了指角落。那里堆着十几台锈迹斑斑的机箱,有些连外壳都没了,裸露出焦黑的主板和缠结的线缆。
陈澈蹲下身翻找。大部分是民用垃圾,偶尔有几块专业卡,也都是五六年前的老型号,成色惨不忍睹。他正打算放弃,目光扫过最底下那台机器。
那是台图形工作站,品牌机的黑色机箱,侧面贴着的标签已经磨损,但还能看出是戴尔的Precision系列。机箱一角有块明显的焦痕,像是电源烧了。陈澈费力地把它拖出来,掂了掂分量——很沉,说明里头的配件没怎么被拆过。
“这机器,”陈澈拍拍机箱,“还能开机吗?”
老头终于开口,声音像破风箱:“开不了,电源烧了。整机拿走,五百。”
“里头什么配置?”
“自己看。”
陈澈从工具箱里掏出螺丝刀,拧开机箱侧板。灰尘像烟雾一样涌出来,他偏头咳嗽了几声。机箱内部一片狼藉,主板靠近电源的位置果然有块焦黑的灼痕,电容都炸了。但显卡插槽上,安静地躺着一块板卡。
陈澈的心脏停跳了一拍。
那是块NVIDIA Quadro RTX 6000。四年前的专业卡旗舰,当年卖两三万。虽然现在过时了,但瘦死的骆驼比马大,性能依然可观。最重要的是,这卡有个特殊用途——它搭载了用于AI计算的Tensor Core,在某些特定类型的计算中,比如结构优化、有限元分析,能有奇效。
“五百?”陈澈确认。
“五百。”
陈澈没再还价。他从钱包里抽出五张红票子——这个月接私活挣的,还没捂热。老头接过钱,随手塞进口袋,继续低头拆他的主板。
陈澈把机箱搬上小推车,轮子碾过坑洼的水泥地,发出哐当哐当的响声。走出市场时,他回头看了一眼。夕阳把成堆的电子垃圾染成肮脏的橙红色,像一座庞大的、沉默的坟场。
而他刚刚从坟里,刨出了一块棺材板。
第三场废铁里的幽灵
工作站太重,陈澈把它拆成几部分才搬上六楼。机箱扔在门口,他先把显卡拆下来,吹掉灰尘,插到自己电脑上。
开机,点亮,驱动自动识别。GPU-Z显示一切正常,显存完好,核心频率正常。陈澈松了口气,至少这五百块没打水漂。
接着处理硬盘。工作站里有三块硬盘,两块普通的机械盘,一块NVMe固态。机械盘里是些陈年文件,设计图纸、施工日志、会议纪要,看项目名称是个大型商业综合体,日期停在2022年。大概是某个设计院淘汰下来的机器。
固态硬盘才是重点。陈澈把它接上硬盘盒,插进自己电脑。系统识别出一个500G的分区,里面很空,只有一个文件夹。
文件夹名字是“SIAO_Client_Beta_v0.92”。
陈澈皱起眉。这缩写有点眼熟。他打开文件夹,里面只有一个可执行文件,名字就叫“SIAO_Client.exe”,和一个巨大的、后缀名是“.sdb”的数据库文件。没有说明文档,没有安装程序,没有版权信息。
他双击那个可执行文件。
屏幕黑了一瞬,然后弹出一个界面。非常简洁,甚至称得上简陋——深灰色背景,左侧是参数输入区,密密麻麻的文本框和下拉菜单;右侧是结果显示区,空白;顶部只有一个菜单栏,只有“文件”“计算”“帮助”三项。
界面中央有一行小字,字体很小,颜色很淡,不仔细看根本注意不到:
“结构智能分析与优化客户端-测试版 v0.92”
“本地知识库版本:2025.1”
“离线模式”
陈澈的呼吸停了一拍。
他想起来了。“SIAO”是国家某个重点实验室“结构智能分析与优化”项目的缩写。他读研时听导师提过,说那是个烧了上亿经费、联合了多家高校和企业的重大项目,旨在开发下一代AI辅助结构设计平台。但后来没了下文,据说是技术路线有分歧,加上经费问题,项目搁浅了。
所以这是那个项目的……测试客户端?一个本应在实验室服务器上运行的东西,怎么会出现在一台报废的工作站里,还流落到二手市场?
陈澈点开“帮助”,里面只有一行字:“请参阅用户手册(未完成)”。
他关掉帮助,试着导入一个简单的模型——他电脑里存着不少以前项目的备份。他选了个小学教学楼的框架结构模型,纯钢框架,节点清晰,荷载简单。
导入很慢。进度条磨磨蹭蹭,电脑风扇开始加速,发出低沉的嗡鸣。足足等了两分钟,模型才出现在界面里,线条有些粗糙,像是简化过的。
陈澈在参数区输入基本信息:结构类型(钢框架)、材料(Q345B)、抗震设防烈度(7度)、场地类别(Ⅱ类)。然后点击“运行分析”。
风扇猛然咆哮起来。陈澈的电脑是几年前配的,i7处理器,32G内存,平时跑常规软件绰绰有余,但此刻CPU占用率瞬间飙到100%,机箱发出不堪重负的呻吟。屏幕上的进度条再次出现,这次走得更慢,像冻住的冰。
陈澈起身去倒了杯水,回来时进度条才走到三分之一。他索性打开手机,处理李薇的微信。转账,四千三,备注“爸的药费”。又转了三千,备注“生活费”。余额瞬间少掉一大截。
等他再抬头,分析完成了。
右侧结果区被数据和图表填满。最上面是整体指标:最大层间位移角1/550,满足规范;基底剪力、倾覆力矩、刚度比……一切正常。下面列出了所有杆件的应力比,用颜色标注,绿色表示安全,黄色警告,红色危险。整个模型一片绿,只有零星几点黄。
陈澈快速扫了一遍,结果和他当年用正版软件算出来的基本一致。他稍微放松了些——至少这玩意儿不是个骗人的空壳。
但他没关掉软件。作为一个结构工程师,尤其是一个靠“优化”灰色项目吃饭的工程师,他对“优化”这个词有种本能的敏感。这软件的名字里就带着“优化”。
他在参数区找到一个不起眼的下拉菜单,标签是“优化目标”。点开,选项不多:最小重量、最小位移、最小应力比、最小造价……他选了“最小重量”。
又在下面找到约束条件栏。他输入:层间位移角≤1/550,应力比≤0.85,符合《钢结构设计规范》所有强条。
然后,他点击“开始优化”。
这一次,电脑的反应超出了他的预期。
风扇的呼啸变成了尖啸,机箱在桌上微微震动,散热口喷出的风烫得吓人。陈澈下意识地把手从机箱上挪开。屏幕卡住了,鼠标指针变成转圈的小沙漏,整个界面死了一样凝固。
他等了一分钟。两分钟。五分钟。
就在他以为电脑要死机,准备强制重启时,界面突然刷新了。
优化完成了。
结果显示区重新绘制了模型,杆件的尺寸明显变了——有些变细了,有些截面形状变了,还有些杆件直接被删掉了。旁边的数据更新了:总用钢量减少了12.7%,最大位移角变成了1/580,应力比全在0.8以下。
陈澈怔住了。
他做了十年结构设计,深知“优化”这两个字的分量。在满足所有安全规范的前提下,把用钢量降低12.7%,这已经不是简单的“优化”,这是逼近理论极限的“重构”。而且软件只用了不到十分钟——虽然这十分钟他的电脑像要爆炸。
他放大模型,检查那些被修改的杆件。软件没有傻乎乎地均匀削弱,而是精准地找到了结构中冗余的部分:某些次要支撑被去掉了,某些杆件从H型钢换成了更经济的方管,某些节点构造被简化了。每一处修改都合理,都符合规范,都……精妙得可怕。
陈澈感到后背一阵发凉。不是恐惧,是某种更复杂的东西——一种工程师面对完美解时的战栗,混合着对未知技术的敬畏,以及一丝……不安。
这玩意儿太聪明了。聪明得不像是2025年就该存在的东西。
他关掉软件,电脑风扇缓缓平息,像一头喘息的巨兽。房间里只剩下空调的低鸣,和他自己有些急促的呼吸。
他看向门口那个黑色的机箱残骸。焦痕、灰尘、锈迹,看起来和任何电子垃圾没有区别。但里面曾经运行过这个软件,这个本该在国家级实验室里、被严格管控的“幽灵”。
陈澈走过去,蹲下身,仔细检查机箱内部。主板烧焦了,电源炸了,内存条不知所踪,但显卡和硬盘还在。他拔出那块固态硬盘,只有手掌大小,黑色的PCB板,标签上印着一串编号,末尾是“DELL OEM”。
没什么特别的。
但他知道,有些东西已经不一样了。他花五百块买回来的不只是一块显卡,还有这个附赠的、来路不明的、聪明得吓人的软件。以及,随之而来的一连串问题:
这软件从哪来?为什么流落出来?还有谁知道它的存在?用它……会有什么后果?
陈澈没有答案。他站起来,把硬盘紧紧攥在手心,金属边缘硌得掌心生疼。
窗外,城市沉入更深的夜。霓虹灯的光污染把天空染成暧昧的紫红色,像一块溃烂的伤口。
他不知道,这块五百块买来的“废铁”,会把他拖向怎样的深渊。他只知道,在那一刻,在父亲天价的药费单、妻子冷漠的追问、房贷的逾期通知和那些灰色报告带来的恶心感之间,他抓住了点什么。
哪怕抓住的,是一把淬了毒的刀。
第四场走钢丝
“SIAO_Client”成了陈澈的秘密武器。
他没敢把它装在工作电脑上,而是塞进一块移动硬盘,需要时接上,用完就拔。软件运行起来依然像头饥饿的野兽,每次优化计算都让电脑濒临崩溃,但结果总是令人——或者说,令工程师——心悸的精确。
陈澈开始用它处理那些灰色地带的“咨询”项目。不是直接出报告,而是作为一个“参谋”。当王总们问“怎么改才能省钱又安全”时,陈澈先把原始模型扔给软件,让它跑一遍极限优化,得到一个理论上“最经济”的方案。然后,他再手动把这个方案打上几个补丁,增加一点安全余量,调低几处过于激进的修改,让它看起来像是一个保守工程师的手笔,而非冰冷AI的极限解。
报告好写了,钱来得快了,王总们更满意了。但陈澈睡得更差了。
他总是在半夜惊醒,梦见自己站在那栋用软件优化过的违建楼下,看着它像积木一样垮塌,砖石和钢筋暴雨般砸下,里面传来哭喊。醒来时浑身冷汗,心跳如鼓。
他知道自己在走钢丝。软件给出的方案虽然都“符合规范”,但那是在理想条件下——材料合格、施工精准、荷载不超。现实是,那些工地用的钢筋可能是瘦身的,混凝土可能是掺了水的,工人可能根本不看图纸。任何一个环节出问题,那些被软件精准削弱的杆件,就会变成最脆弱的断点。
但父亲的药不能停。李薇虽然分居了,但没提离婚,大概还在观望,看他能不能翻身。房贷逾期三个月,银行已经发来律师函警告。
他需要钱,需要很多钱,需要快钱。而“SIAO_Client”是他最快的镰刀。
直到他接到那个冷链仓库的项目。
项目在城乡结合部,原本是个单层钢结构仓库,业主私自改建成两层,还想上重型冷链设备。荷载翻了两倍不止,原结构像小马拉大车,柱子应力比直接飙红。
业主姓赵,是个满脸横肉的中年男人,开辆路虎,副驾坐着个年轻女孩。他把一摞皱巴巴的图纸拍在陈澈桌上:“陈工,想想办法。加柱子不行,影响设备进出。加固也不能太贵,预算就三十万。”
陈澈扫了一眼图纸,心就沉了下去。这不是加固,这是重建。三十万?连材料费都不够。
但他没拒绝。赵总出的咨询费是五万,预付两万。陈澈收下了,像收下一块烧红的炭。
他把模型建出来,扔给“SIAO_Client”。这次他没选“最小重量”,选了“最小造价”,约束条件里把预算上限设为三十万,荷载按最不利情况考虑,然后点击优化。
电脑风扇再次发出垂死的咆哮。这一次,计算持续了整整四十分钟。陈澈去楼下买了包烟,抽到第三根时,界面刷新了。
软件给出了方案。
一个极其复杂、简直像蜘蛛网般的加固方案:在原有柱周包裹碳纤维布,在关键梁柱节点增设狗骨式耗能支撑,在楼板下增设预应力拉杆,在基础周围做微型桩托换……密密麻麻的杆件和节点,像给一个病入膏肓的人插满了维生管线。
方案下方有一行小字备注:
“本方案在给定预算内满足强度及变形要求,但安全储备极低(多数构件应力比≥0.9),对施工精度、材料性能及后期维护要求苛刻。且部分构造措施(如狗骨式支撑)不符合《钢结构加固技术规范》推荐做法。不建议用于实际工程。”
陈澈盯着那行字,手指冰凉。
0.9的应力比,意味着那些杆件基本是在满负荷工作,没有任何容错空间。狗骨式支撑是抗震研究中的概念,还没写进规范,用了就是赌博。整个方案像在用纸牌搭城堡,看起来精巧,但一口气就能吹倒。
但软件说,它“满足要求”。在三十万的预算内,它真的找到了一个理论上的解。
赵总的电话来了:“怎么样陈工?有办法没?”
陈澈张了张嘴,喉咙发干。他该说“没办法,这楼必须大改或者拆了重建”。但他想起刚到手的两万块预付金,想起父亲躺在病床上灰败的脸,想起李薇微信里那个冰冷的问号。
“赵总,”他听见自己的声音,平稳,专业,甚至带着点恰到好处的为难,“有个初步思路,但比较复杂,施工要求很高。我需要当面跟您和施工方详细交底。”
“能搞就行!”赵总大笑,“明天来我办公室,细聊!”
电话挂断。陈澈坐在黑暗里,屏幕的光映着他惨白的脸。他把那个优化方案另存为“冷链仓库极限方案V1”,然后关掉了软件。
但他没有关掉这个文件。它像一颗毒瘤,静静躺在硬盘的角落里。
夜深了。陈澈从移动硬盘里翻出另一个项目文件,文件名是“滨江国际公寓_全套”。这是他职业生涯的滑铁卢,也是他硬盘里保存最完整的项目。每份图纸、每本计算书、每次会议纪要,甚至事故调查报告,他都留着。像某种自虐般的收藏。
他打开了“SIAO_Client”,导入了滨江国际的结构模型。然后,他在参数区输入了一段话:
“假设情境:学术研究。已知该建筑存在施工质量问题(参见附件事故报告)。评估在不进行任何修复的前提下,结构在当前损伤状态下的实际安全裕度,及在设防烈度地震下的破坏模式分析。”
他上传了事故报告扫描件,点击“运行分析”。
这一次,电脑的反应比任何一次都剧烈。风扇的尖啸几乎要撕裂空气,机箱烫得不敢触碰,屏幕上的进度条走走停停,像在泥沼中挣扎。陈澈去冲了个澡,水流砸在脸上,他闭着眼,却看见屏幕上那些红色的警告框,像血一样漫开。
洗完澡回来,计算还在继续。他倒在沙发上,用毯子蒙住头,却挡不住电脑野兽般的咆哮。他在轰鸣声中昏沉沉睡去,梦里是倒塌的楼,是哭声,是父亲在病床上说“澈啊,爸疼”。
不知过了多久,声音停了。
死一般的寂静。
陈澈惊醒,毯子滑落在地。他冲到电脑前,屏幕还亮着,界面被密密麻麻的云图、数据流和红得刺眼的警告标记填满。结论区域,几行加粗的黑色文字,像判决书一样钉在那里:
“基于输入模型及假设施工缺陷,分析表明:”
“1.结构整体抗侧刚度较原设计值下降约18.7%;”
“2.在设防烈度地震(7度)作用下,局部连梁及节点损伤严重,但主体结构不至倒塌;”
“3.在罕遇地震(7.5度)作用下,建筑东北角剪力墙筒体因施工缺陷及平面不规则产生严重扭转效应,存在连续倒塌风险。风险等级:高。”
“注:本分析基于有限元模型及理论假设,实际结构性能应以实体检测鉴定为准。”
陈澈僵在椅子上,血液似乎都冻住了。房间里只剩下空调单调的风声,和他自己擂鼓般的心跳。
“连续倒塌风险”。这是结构工程师最恐惧的词汇之一。它不是某个房间塌了,而是像多米诺骨牌,一个构件失效,引发连锁反应,整栋楼在几十秒内层层崩溃,里面的人几乎没有生还可能。
而软件精准地指向了位置:东北角剪力墙筒体。那是当年施工出问题的地方,是事故调查的焦点,也是他反复复核后认为“虽有缺陷,但仍在可控范围内”的位置。
软件说,不可控。风险等级:高。
陈澈猛地站起来,在狭窄的工作间里来回踱步。地板被他踩得咚咚响,像困兽的咆哮。焦虑、恐惧、一股扭曲的、连他自己都感到恶心的快意,还有更深重的无力感,在胸腔里翻搅冲撞。
他想起了当年的事故调查会。甲方代表拍着桌子吼:“陈工,你是签字的人!你要负责!”施工方代表低头抽烟,一声不吭。监理方拿出厚厚的记录,证明自己“多次口头警告”。专家组最后定性:“施工质量重大责任事故,设计方对施工交底不足,现场配合不到位,负次要责任。”
次要责任。就这三个字,让他丢了工作,背上污名,行业里再也抬不起头。而真正的责任人——偷工减料的施工队、收钱放水的监理、为了赶工期施压的甲方——都只受了不痛不痒的处罚。
这不公平。
一个疯狂的念头,像毒藤一样从心底滋生出来,缠绕住他的心脏,越收越紧。
如果……如果把这个分析报告,匿名寄给现在的物业、业委会,或者……媒体?会不会掀起新一轮调查?会不会让那些该负责的人,真正付出代价?
他几乎能想象那个场景:报告公开,舆论哗然,政府介入,专业机构重新检测,坐实隐患,整栋楼的人紧急疏散,开发商和施工方被重新拖回被告席,面临天价索赔和刑事指控……
多解气啊。
但这个念头只存活了几秒,就被冰冷的现实扑灭了。他是匿名寄的,但这份分析报告的专业性太强,指向性太明确,很容易被溯源。一旦查到他,他非法持有并使用未认证软件、长期从事灰色咨询、甚至可能被指控“危害公共安全”……每一条都够他喝一壶。
更重要的是,那栋楼里现在住着上百户人家。如果报告公开,引发恐慌,发生踩踏,或者更糟,有人承受不住压力……这和他亲手推倒那栋楼,有什么区别?
陈澈瘫坐回椅子上,双手深深插进头发里,用力揪扯,仿佛要把那个疯狂的念头连根拔出来。头皮传来尖锐的痛感,但抵不过心里的绞痛。
他看向屏幕,那几行判决书般的文字依然刺眼。他又看向窗外,城市的灯火依旧辉煌,像一片缀满钻石的黑色天鹅绒,美丽,冰冷,与他的绝望格格不入。
他不知道该怎么办。举报是自寻死路,沉默是慢性自杀。他像一个被困在炸药库里的人,手里拿着火柴,点燃是粉身碎骨,不点燃是等死。
屏幕右下角,时间跳到凌晨五点十三分。天快亮了。
陈澈慢慢直起身,眼神空洞地盯着屏幕。然后,他移动鼠标,点击“文件”菜单,选择了“另存为”。他把这份分析报告保存下来,文件名是“滨江国际损伤分析绝密”,放进了硬盘最深处的加密文件夹。
做完这一切,他关掉了“SIAO_Client”,拔掉了移动硬盘。硬盘滚烫,像一块刚从炉膛里取出的烙铁。
他走到窗边,推开窗户。凌晨的风灌进来,带着城市苏醒前特有的、清冷而污浊的气息。楼下街道空无一人,只有环卫车缓慢驶过的声音。
陈澈点燃最后一支烟,深吸一口,烟雾在肺里打了个转,又被狠狠咳出来。他咳得弯下腰,眼泪都呛了出来。
烟抽完了。他把烟蒂弹出去,看着那点红光在黑暗中划出一道弧线,坠落,熄灭。
他关上窗,回到电脑前。屏幕上,那个简陋的软件图标静静躺在桌面上,像一个沉默的潘多拉魔盒,一个五百块买来的、盛满幽灵的骨灰盒。
他伸手,把图标拖进了回收站。
但手指在“清空回收站”的选项上,悬停了很久,最终还是没有按下去。
天,彻底亮了。

