智算多多
官方邮箱:service@zsdodo.com

公司地址:北京市丰台区南四环西路188号总部基地三区国联股份数字经济总部


总裁办公室的落地窗外,云层压得很低。陆行舟拿着我的辞呈,纸张在他指间微微晃动。“公司刚给你配了百万期权。”他声音里的困惑不像是装出来的。我把手机解锁,打开邮箱,调出那封邮件,屏幕转向他。
发件人:人力资源部。主题:期权授予已被取消。正文三行字,干净得像手术刀切口——根据公司期权管理制度第17条,您的期权授予因故取消。如有疑问请联系HR。落款:马宏盛。日期:上周三。
陆行舟盯着屏幕,食指关节抵在下巴上。“巧得很。”我把手机收回来,“那天下午,我刚拒绝把核心算法的代码权限开放给某个人。”窗外的云层裂开一道缝,光漏进来,落在办公桌上那份辞呈的签名处。我的名字写得一笔不苟。三年来,这是我在云帆科技签过的最痛快的三个字。
我叫宋砚,三十四岁,在云帆科技干了三年研发。工号2847。三年里我写过六万行代码,参加过二十三次版本迭代,熬过数不清的通宵。工位在研发部最角落,左边是消防通道,右边是茶水间。每天八点半打卡,午休吃食堂,下班时间不定。同事眼里我是个闷葫芦。开会坐最后一排,从不第一个发言。团建能不去就不去,去了也只喝可乐。研发总监老周对我的评价是:技术过硬,性格太软。
许昭是我助理,去年入职。小伙子嘴甜,手脚勤快。帮我领文具、报销发票、订加班餐,从不出错。有同事开玩笑说,宋工你上辈子积了什么德,摊上这么个好助理。我没接话。
许昭入职第二天,我查过他的简历。上一家公司叫“盛恒科技”,法人代表许茂林。简历上写的是“产品助理”。我父亲退休前在军工研究所干了四十年,专做信息安全。他办过的最后一起泄密案,泄密方就是盛恒科技的前身——恒通电子。那案子最终查到的是一个临时工,拘留十五天,罚款五千。父亲在结案报告里写了一行批注:临时工背不了这么大的锅。报告锁进档案柜,一锁就是十二年。
许昭来面试那天,我在会议室玻璃门外看了他三秒。白色衬衫,黑框眼镜,笑起来露出八颗牙齿。HR小姑娘被他逗得前仰后合。我走回工位,打开浏览器,搜索“许茂林”。百度百科第一条:盛恒科技创始人,有一子一女。儿子名字没写,照片没放。放下手机,我盯着窗外看了很久。
许昭端着一杯咖啡进来。“宋工,美式,少糖。”“谢谢。”他放下咖啡时,袖口往上提了一截。左手腕内侧,有一条疤。不长,但很深。像被什么锋利的东西划过。我端起咖啡喝了一口。苦的。他放的不是少糖,是没糖。从那天起,我开始记录。
三周前的周三,我加班到凌晨。整层楼只剩我的工位亮着灯。窗外城市的天际线沉在雾里,远处高架桥上的车灯连成两条光带,红的往南,白的往北。许昭也没走。他坐我斜对面,盯着屏幕,时不时敲几下键盘。
十一点半,他起身走过来。“宋工,要不要吃点夜宵?楼下便利店还开着。”“不用。”“那我下去买瓶水。”他拿起手机往外走,到门口时回头,“要带什么吗?”“不用。”他的脚步声消失在走廊尽头。我等他走远,把电脑从休眠中唤醒。桌面右下角弹出日志——三分钟前有人尝试登录。账号是我的。密码错误一次。我点开登录日志详情。尝试时间:23:27:14,尝试IP:192.168.1.78。是我们这层楼的WiFi地址。错误原因是密码错误,不是二次验证失败。他还没走到我的工位前,就已经在用我的账号尝试登录了。
我关掉日志窗口,打开核心算法库的权限管理后台。后台显示近七天内的所有访问记录。其中有一条让我停了手——凌晨03:15:22,账号songyan登录,访问文件“算法架构说明.pdf”,操作类型“下载”,IP地址是我家的WiFi。那天凌晨三点,我在睡觉。林知意睡在隔壁主卧。她说失眠,抱着笔记本去了客厅。我把权限管理后台的日志导出,存进加密文件夹。然后关掉电脑。
许昭回来时拿着一瓶绿茶。他拧开盖子喝了一口,凑过来看我的屏幕。“宋工还在改那个bug?要不我帮你测?”“不用,快完了。”他点点头,回到自己座位。我看着他喝绿茶的样子——瓶盖拧三圈,第一口含两秒再咽,瓶身永远是标签朝外。这些细节是他入职第一周我就注意到的。不是刻意观察,是我对所有靠近我的人都这样。父亲教我的。他说,一个人说谎时手会停,但习惯不会。许昭的习惯,两年没变过。他在我这儿的每一分钟,都在表演。
凌晨一点我收拾东西。许昭还坐在工位上,屏幕亮着,界面是一个我从未见过的后台面板——人事系统。他切得很快,但我看见了窗口标题栏的一行小字:期权管理模块。我没停,拿起包往外走。“宋工慢走。”“嗯。”电梯门关上。我按下B2,然后掏出手机,打开家里的路由器管理APP。客厅那台MacBook的联网记录显示:03:12-03:24,活跃。访问过的域名列表里,有一个是我的私有云地址。私有云里存着所有项目文档。包括那份“算法架构说明.pdf”。
电梯到了地下车库。我坐进车里,没发动。方向盘被停车场灯光照得发白。我盯着挡风玻璃上贴的年检标志,2024年,蓝色的菱形,上面印着日期。我和林知意结婚四年。四年里,她的信用卡账单从每月八千涨到五万。她说时尚杂志编辑的收入不够花,我信了。她说闺蜜代购的包是A货,我信了。她说失眠抱着电脑去客厅,我也信了。
我把手机连上车载蓝牙,播放了一段录音。不是许昭的,是她的。三天前她在阳台打电话,我刚好在书房开窗。她声音压得很低,但风把每个字都吹过来了——“期权的事搞定了。他那边你不用管,他不会查的。”风把她声音送进我耳朵里时,我正在看那份被她下载过的算法架构说明。四十七页,每一页的页眉都有我的名字。她没删。也许是忘了。也许是不在乎。
车灯照亮地库的水泥柱。我发动车,挂挡,驶出车位。后视镜里,2847号工位上的灯还亮着。
陆行舟约我见面的地方是一家羊肉汤馆。在城中村深处,门脸小得导航都找不到。老板姓丁,六十多岁,炖了一辈子羊肉。店里只有六张桌子,墙上贴着菜单,红底白字,边角卷起来了。这家店是我们大学时发现的。那会儿穷,两个人凑四十块钱点一个大份羊肉汤,多加两份饼,吃到汤底都不剩。后来创业,融了A轮,陆行舟说换个地方庆祝,我不同意。还是来这儿,加了一份羊杂。再后来公司做大了,他成了陆总,我成了宋工。每周五晚上,只要不出差,我们还在这儿碰头。他脱了西装坐塑料凳上,领带塞进衬衫口袋,用缺了口的碗喝汤。店里没别人认识他。
上周五的汤端上来时,热气冲得我眼镜起了雾。我摘下来擦,陆行舟已经喝了大半碗。我把手机推过去。屏幕上开着那个加密文件夹,里面三组文件:许昭的登录失败日志,林知意的路由器访问记录,还有那份被下载的算法架构说明。他翻完后,筷子搁在碗沿上。“什么时候开始查的?”“许昭入职第二天。”“两年?”“两年。”他端起碗喝汤,喉结滚动。放下碗时汤已经见底。他拿饼把碗底刮干净,塞进嘴里嚼。嚼完才开口。“你当初说要进研发部查内鬼,我以为三个月就够了。”“我也是这么以为的。”“后来呢?”“后来发现,不是一个人在偷。”
老板端来第二碗汤。陆行舟没动。我把自己的碗推给他,他接过去,喝了一口。“许昭是盛恒的人。”“许茂林的儿子。”他放下碗。“你确定?”我打开手机里一段录音。许昭的声音先出来,然后是许茂林的——爸,云帆的核心算法架构我摸清了,再给我一个月。许茂林的声音带着电流杂音,但每个字都听得清:期权那条线也盯紧。你妈留给你的股份,不能让别人分走。录音播完,羊肉汤馆里只剩排气扇嗡嗡响。后厨传来丁老板剁骨头的声音,一刀,一刀,砧板震动。
陆行舟手指蘸着茶水,在桌上画了一个圈。“盛恒。许茂林。他儿子叫许昭远。”圈里的茶水慢慢洇开。“他化名许昭,在我最好的兄弟身边坐了两年。”我没接话。“马宏盛呢?期权取消是他批的。”“马宏盛女儿患罕见病。年均治疗费四十万。”我把另一份文件调出来,“去年六月开始,盛恒科技的对公账户每月往医院转一笔钱。备注写的是‘慈善捐助’。”陆行舟看着那份银行流水,很久没动。“马宏盛跟了我十五年。创业时租不起办公室,他家客厅就是我们的第一间会议室。他女儿那会儿才三岁,在沙发上睡着了,我们几个压低嗓子开会。”他把茶杯端起来,没喝,又放下。“你打算怎么办。”“让他继续批。”陆行舟看我。“许昭要期权,给他。他要核心算法,也给他。给他一份假的。”“核心技术——”“溯源系统。老陆,你记不记得我爸当年那起泄密案?唯一没查出来的,是泄密者怎么拿到的权限。”“记得。”“因为我们当时没有操作溯源。谁登了、看了什么、拷走了什么,全部没有记录。”
我从包里拿出一台笔记本电脑,打开。屏幕上是一个后台界面,UI简洁,灰底白字。左侧是用户列表,右侧是操作日志。日志栏里每一条记录都带着时间戳,精确到毫秒,后面跟着操作类型、IP地址、设备指纹,以及一段三十秒的屏幕录屏。“这套系统,我写了两年。”陆行舟凑近看。屏幕上正在回放一段录屏:凌晨03:15,账号songyan登录,浏览文件夹,选中“算法架构说明.pdf”,点击下载。录屏右下角,一个小窗口同步显示前置摄像头的画面——林知意的脸,被屏幕光照得发蓝,面无表情。录屏播完,定格在她关掉电脑的那一帧。“我在家里的路由器上部署了流量镜像。所有通过WiFi的数据,全部被复制一份,加密上传到独立服务器。区块链存证,时间戳不可篡改。”
陆行舟沉默了很长时间。“也就是说,从许昭入职第一天,你就在等。”“等他把背后的人牵出来。”“现在牵出来了。”“还不够。”我关掉电脑,“许茂林要的是算法。许昭要的是期权。马宏盛要的是女儿的治疗费。我妻子要的——是另一个生活。他们各怀鬼胎,但有一个共同点。都把我当梯子。”排气扇还在响。丁老板的剁骨头声停了。“行舟,公司现在有一个机会。”“什么机会?”“把我们三年前没做完的事做完。不是抓一个人,是建一套制度。”陆行舟把碗里最后一口汤喝了。“你说,我做。”
盛合律所的会议室在二十七楼。落地窗外是整座城市的天际线,阳光把玻璃幕墙晒得发烫。会议室里空调开得太足,我坐了一会儿就觉得手指发凉。门推开。沈若抱着一摞案卷进来,高度到她下巴。她侧身用肩膀顶开门,案卷晃了晃,最上面那本滑下来。我伸手接住。“谢谢。”她放下案卷,把滑落的那本归位。然后拉开椅子坐下,翻开第一本。“陆总说情况特殊,让我直接跟你对接。我只有一个要求——别瞒我。”
她把我的手机接过去,连上投影仪。加密文件夹的内容铺满整面墙:许昭的登录日志、林知意的路由器记录、马宏盛的后台修改痕迹、许昭与许茂林的通话录音文字稿。她看得很快,手指在触摸板上滑动,一屏接一屏,偶尔停下放大某条记录。全部看完以后她靠在椅背上。“期权取消的操作记录,你从哪拿到的?”“马宏盛的电脑。他习惯午睡,一点到一点半。屏幕不锁。”她嘴角动了一下。“你用他的账号登录后台导出的?”“没有。用他的电脑访问了数据库物理日志。binlog。他删了应用层记录,删不了物理日志。”沈若转头看我。“你说你是研发部的?”“工号2847。”她转回去继续翻证据。翻到林知意传输文件的记录时,手指停在触摸板上。“这个MD5值是你做的比对?”“是。”“比对结果完全一致。文件源头就是你的私有云。”“对。”她合上案卷。“宋砚,我问你一个问题。你妻子传输这份文件的时间是凌晨3:12。你当时在哪?”“在卧室。醒着。”会议室里安静了几秒。“所以你不是在查案。你是在亲眼看着她偷。”我没回答。她没追问。她把案卷重新翻开,抽出三份空白的刑事控告书模板。最上面那份的当事人栏里,她写下第一个名字:许昭远(化名:许昭)。“侵犯商业秘密罪。刑法第二百一十九条。以盗窃、利诱、胁迫或者其他不正当手段获取权利人的商业秘密,处三年以上七年以下有期徒刑。”
第二份。马宏盛。“职务侵占罪。刑法第二百七十一条。公司人员利用职务便利,将本单位财物非法占为己有。他取消你的期权,变更归属到自己名下代为保管,数额巨大,五年以上。”第三份。她笔尖悬在当事人栏上方,没落下去。“林知意。你妻子。”空调出风口在我正上方。冷风灌进后脖颈。“她的行为是传输商业秘密。但这里有一个变量——她是否知道这份文件属于商业秘密。”“文件每一页的页眉都有我的名字。文件属性里标注了‘核心算法-保密’。”“她知道‘保密’是什么意思吗?”我看着投影上林知意的录屏截图。屏幕光照着她的脸,面无表情。右手握鼠标,左手搭在键盘上,无名指上的婚戒反射着屏幕光。“这个问题,应该由法庭来问。”沈若落笔。第三份控告书,当事人栏:林知意。她写完最后一个字,合上笔帽。啪的一声。“宋砚,还有一个问题。”“你说。”“这三份控告书,你是想一起交,还是分开交?”“有什么区别?”“一起交,就是同案。分开交,许昭和马宏盛先进去,你妻子会看到消息。她如果主动投案,量刑可以从轻。”投影上的录屏还定格在林知意的脸。“一起交。”沈若把三份控告书整齐码好,装进档案袋。“证据链还差一环。网吧监控。马宏盛修改数据库那晚的IP地址对应一家网吧。监控录像需要调取。”“我去。”“你不行。当事人调取的监控,证据效力会打折扣。”她站起来,“我去。”她拎起包往外走。到门口时回头。“宋砚。”“嗯。”“这些证据,你攒了多久?”“两年。”她看了我一眼。“你不像能忍两年的人。”门关上了。空调还在吹。投影上的光落在空椅子上。我坐在那儿,手指还是凉的。
家宴定在周六。林知意提前三天开始准备。换了新桌布,买了成套的骨瓷碗碟,冰箱里塞满食材。她蹲在厨房地上一只一只擦杯子,擦完举到灯下看有没有水渍。我从书房出来倒水,路过厨房门口。她的背影被橱柜灯照得发白。头发用夹子随意夹在脑后,掉下来几缕,贴在脖子上。“要帮忙吗?”“不用。你把书房收拾一下就行。许昭说想看看你最近在写的那套代码。”“好。”我倒完水回到书房。路由器就放在书桌下面的角落里,白色的塑料壳,三根天线,指示灯一明一灭。我打开后台管理界面,流量审计记录里,过去七十二小时林知意的微信传输数据共有四十七条。其中有一条是昨晚十一点发出的。文件名:算法架构说明_v2.pdf。接收方:许。我把这条记录标记为红色。路由器是我三个月前换的。旧的那台被雷击坏了,我跟林知意说是从公司拿的测试机。其实是我自己改过的,固件里植入流量镜像模块。所有经过这台路由器的数据,全部被复制一份,加密传输到我租用的云服务器上。她不知道。许昭也不知道。整个家里唯一知道这件事的,是书房窗台上那盆快枯死的绿萝——我偶尔会对着它说话。
周五晚上,家宴前夜。林知意试完衣服从衣帽间出来,穿着一件我没见过的真丝睡裙。墨绿色,吊带,衬得她锁骨很白。她坐到床边,往手上挤护手霜。洋甘菊的味道弥漫开来。“老公。”“嗯。”“如果有一天你发现我做了错事,会原谅我吗?”她背对着我。护手霜涂完了,她还在搓手。我看着她无名指上的婚戒。四年前在民政局,她给我戴上戒指时手在抖。工作人员说恭喜,她眼眶红了。那天的阳光很好,从窗户照进来,照在她手捧花上。花是粉色的玫瑰,花瓣边缘有点蔫了。她不在乎,一路抱着回家,插在花瓶里养了一个星期。“那要看,错的是什么。”她的手停了一下。然后把手放下来,关掉床头灯。“我随便问问。”黑暗里她的呼吸声慢慢变均匀。我睁着眼,天花板上的烟雾探测器亮着一个红点,一明一灭。手机在枕头下震动,我摸出来看——路由器后台推送了一条新警报:目标IP 192.168.1.4。设备名Laptop-Zhiyi。上传文件“算法架构说明_v2.pdf”。接收方微信ID xu_19960315。时间23:47:02。我把手机翻了个面,屏幕朝下。她说的“随便问问”,是在传完文件以后。
周六。岳父林德厚上午十点到。他拎了两瓶酒,一瓶给许昭,一瓶给马宏盛。进了门先不进客厅,站在玄关换鞋,鞋底在门垫上蹭了又蹭。他穿一件洗得发白的灰色夹克,领口磨出了毛边。“爸,不用换鞋。”“鞋底脏。”他把鞋脱下来,整齐放在鞋柜旁边。林知意从厨房出来,在围裙上擦着手。看见他手里的酒,脸僵了一下。“爸,你买这么贵的酒干嘛。”“不贵。超市打折。”他把酒放在餐边柜上,去洗手间洗手。水龙头开了很久,哗哗响。
许昭十一点半到。茅台拎在手里,礼盒装,袋子是金色的。他穿了件深蓝色polo衫,袖口挽到小臂。左手腕内侧的疤被手表遮住了。马宏盛跟他前后脚进门,手里提着一盒茶叶,纸袋上印着茶行的名字。“宋工。”许昭把茅台放在餐边柜上,跟岳父那两瓶并排。一瓶的包装是金色的,两瓶是红色的。摆在一起,像颁奖台。“坐。”我指沙发。他坐下来,目光扫过客厅。电视柜,茶几,书架。扫到书房门口时停了一下,然后收回。林知意从厨房端菜出来。红烧肉,清蒸鲈鱼,糖醋排骨,蒜蓉西兰花。她穿那件鹅黄色的连衣裙,腰收得很紧。放下菜时跟许昭对视了一眼,不到一秒,各自移开。我进厨房盛汤。灶台上炖着排骨莲藕汤,汤色奶白。我拿勺子撇掉浮沫,听见客厅里许昭在夸林知意手艺好。“嫂子这红烧肉,比我们公司食堂强一百倍。”林知意的笑声从客厅传进来。轻,短,像被风吹了一下。我把汤端出去。
酒过三巡,许昭站起来敬酒。“宋工,我敬你。这两年跟着你学了不少东西。”他杯沿压低,碰在我杯身下三分之一处。敬酒的规矩,他比谁都懂。我喝了一口。他干了。马宏盛接上。“宋砚,咱俩同事三年,平时交流不多。但你的技术,研发部没人不服。”他举杯,手背上的老年斑比以前多了。我碰杯,他喝了一半,放下杯子时酒洒出来几滴,他用手指抹掉。岳父林德厚坐在主位,筷子用得很慢。他夹一块红烧肉,在碗里放了一会儿才吃。嚼的时候腮帮子一动一动,眼睛看着碗里的米饭。
许昭的手机响了。他看了一眼屏幕,站起来。“不好意思,供应商催款。我接一下。”他朝阳台走去。玻璃推拉门哗啦一声拉开,又哗啦一声合上。阳台上的声控灯亮了,照着他侧脸。我放下筷子。“爸,借您手机用一下。给知意打个电话,让她把汤热一热。”林德厚从兜里掏出手机。老年机,按键的,屏幕只有两指宽。通讯录里存了不到二十个人,排在第一位的备注是“闺女”。我接过手机。按亮屏幕。拨出。免提。嘟——嘟——客厅安静了。阳台方向传来手机铃声,隔着玻璃门,闷闷的。嘟——嘟——电话接通。许昭的声音从阳台传来,同时从岳父手机的扬声器里炸开——“爸爸,零花钱不够啦。”娇滴滴的。拖着尾音。像撒娇,像床上的耳语。
客厅里,筷子同时停了。林德厚的酒杯举在半空,酒液在杯壁上挂了一层。马宏盛嘴里的糖醋排骨还没嚼完,腮帮子鼓着,不动了。我从阳台方向收回目光。厨房里,汤碗摔碎的声音。瓷器炸开。汤水溅到瓷砖上的声音比想象中轻。像什么东西被闷住了。林知意站在厨房门口。鹅黄色连衣裙的裙摆沾着汤汁,脚边是碎瓷片。莲藕块滚到地板缝里,排骨块摔成两截。她看着桌上的老年机,看着屏幕上正在通话的“闺女”两个字。许昭从阳台冲回来。推拉门被他撞得弹回来,哐一声砸在门框上。他脸上的血色褪得干干净净,嘴唇张开又合上,合上又张开。“宋工——”我挂断电话。把老年机轻轻放回岳父面前。然后站起来。“各位,我介绍一下。”公文包在茶几下面。我弯腰拉开拉链,取出一份文件。封皮是浅黄色的,左上角印着“代持协议”四个小字。三年前签的,纸张边缘有些毛了。展开。最后一页的签名处,陆行舟的名字旁边,是我的名字。日期:2021年4月17日。“我叫宋砚。云帆科技联合创始人,占股23.6%。”满桌死寂。“三年前,我以普通员工身份入职研发部。工号2847。”马宏盛手里的茶杯开始抖。茶水从杯沿晃出来,烫了他的手。他没擦。许昭退了一步。腿撞在沙发扶手上,身体歪了一下。我看着他。“许昭,真名许昭远。盛恒科技许茂林之子。”我停顿,“需要我继续介绍吗?”他没回答。喉结上下滚动。
我把U盘从钥匙串上取下来,插进电视。屏幕亮起来,四栏证据并排显示,每一栏上面标着序号。第一栏:操作录屏。许昭的账号尝试登录核心算法库,时间戳精确到毫秒。三次密码错误,失败原因记录在右侧。第二栏:后台日志。马宏盛修改期权数据库的记录。修改时间:凌晨2:17。修改IP:58.221.36.74。对应地址:飞宇网吧。监控截图逐帧播放——戴着口罩的人,黑色polo衫,左手腕手表。与马宏盛日常佩戴的是同一款。第三栏:微信记录。林知意将“算法架构说明.pdf”发送给许昭。文件MD5值比对结果——与公司服务器存储的源文件完全一致。传输时间:凌晨3:12。第四栏:通话录音。许昭与许茂林。文字稿逐行滚动——“云帆的核心算法架构我摸清了。”“期权那条线也盯紧。”“你妈留给你的股份,不能让别人分走。”屏幕最后定格在文字稿的最后一行。我转向林德厚。他坐在椅子上,酒杯还举着。酒已经不晃了。他的手不抖了。“爸。对不起,让您看到这些。”林德厚把酒杯放下。缓缓站起来。椅子腿刮过地砖,发出一声尖响。他走到林知意面前。她比他矮半个头,仰着脸,嘴唇发白。他没打她,手垂在身体两侧。“你妈在裁缝铺踩了三十年缝纫机。供你上大学。”她喉咙里发出一个声音,不像哭,不像说话。“你就学会这个?”林知意的腿弯下去。膝盖磕在地砖上,骨瓷碗碟的碎片扎进去。她没感觉到。我拨出第一个电话。经侦支队,刘队长。“证据已提交,人可以带走了。”第二个电话。陆行舟。“收网。”第三个电话。沈若。“刑事控告书。用第一版。”挂断。蹲下来。林知意的眼睛离我只有二十厘米。眼妆花了,假睫毛脱了一半。她的无名指上还戴着婚戒。“你问过我,会不会原谅。”她嘴唇在抖。“我现在回答你。不会。不是因为期权。”她的眼睛里有光在晃。“是因为你把我的代码,发给了要害我的人。”我站起来。门铃响了。沈若站在门外,身后是两名警察。她穿着黑色西装,头发扎起来了。手里拿着档案袋。“宋砚,证据全部固定。检察院明天一早收案。”我接过档案袋。三份刑事控告书。许昭远。马宏盛。林知意。每份最后一页都盖着律所公章,红色的,油墨还没完全干。警察带人走的时候,客厅里只剩碎瓷片和洒出来的汤。岳父坐在椅子上,两手放在膝盖上,看着地上那滩汤。“爸。”他抬头。眼眶干着。“我送您回去。”他站起来,走到玄关。弯腰把鞋穿好,鞋带系了两道。然后直起腰,把门口那两瓶红盒的酒拎起来。一瓶左手,一瓶右手。电梯门开的时候,他说了一句话。“那瓶金色的,不是我的。”电梯门关上。楼层数字一格一格往下跳。我回到客厅。窗外的城市亮起了灯,写字楼的,住宅楼的,高架桥上的。红色白色橘黄色,一层一层铺到天边。从这套房子看出去,原来能看到江。江面上有船,船上的灯倒映在水里,碎成一片。我在这里住了四年。第一次发现。手机亮起。沈若的消息:“她膝盖里的碎瓷片取出来了。三块。”下面还有一条。“她让我转告你一句话。那个文件,她不知道是核心算法。许昭跟她说,只是普通项目资料。”我站在窗前。江上的船慢慢驶过,灯影被水波拉长。回了一个字。“好。”法律不看“知不知道”。不重要了。文件MD5值对上了。许昭告诉她的,是“普通项目资料”。他连她都没说实话。她信了。因为想信。窗外那艘船消失在桥下。江面恢复平静,灯光碎着。我关掉手机。收拾地上的碎瓷片。一块一块捡起来,放在报纸上。莲藕块已经干了,粘在地砖上,要用指甲抠。
周一。盛合律所。沈若把网吧监控的原盘文件投在墙上。画面被放大到像素颗粒都清晰可见——凌晨2:14,飞宇网吧。一个人走进来,黑色polo衫,口罩,左手腕手表。他在角落的机器坐下,开机,登录。屏幕上的内容被前置摄像头拍下来:云帆科技OA系统,期权管理后台。画面定格在他敲键盘的手。“手表是浪琴名匠系列。马宏盛去年公司年会戴的就是这块。”沈若用激光笔在表盘上画了一个圈,“表带第七节有一道划痕。他日常习惯左手戴表,划痕位置与监控一致。”她从档案袋里抽出一张照片。年会合影,马宏盛举杯,左手腕露出来。放大,表带第七节,划痕清晰可见。“同一块表。同一道划痕。排除合理怀疑。”她关掉投影。拉开椅子坐下。“许昭的审讯记录出来了。他没扛住。”她把一份复印件推过来,“许茂林是总策划。许昭负责执行。他在你身边两年,只有一个任务——拿到核心算法的完整架构。”“期权那条线呢?”“许昭自己的主意。他爸不知道。”沈若翻开复印件第三页,“许茂林只想要技术。许昭觉得光拿代码不够,他要期权。他说——‘期权是我应得的。我在他身边装了两年孙子。’”审讯记录上许昭的原话被荧光笔标出来。字迹潦草,是讯问人员的手写记录。“还有一句。”沈若手指移到页面底部,“问:你为什么找林知意下手?答:她是宋砚身边最薄弱的环节。”我看完那行字,把复印件推回去。“马宏盛呢。”“全撂了。”沈若调出第二份审讯记录,“女儿的治疗费去年六月断了。许茂林通过盛恒对公账户支付。伪装成‘慈善捐助’,每月三万。他第一次收钱那天晚上,在医院走廊蹲着哭了很久。监控拍到了。”视频画面:医院走廊。凌晨一点。马宏盛蹲在病房门口,背对镜头,肩膀在抖。病房门上的窗户透出光,里面是他女儿。护士路过,看了他一眼,没停。“他女儿叫什么?”“马晓。”“什么病。”“脊髓性肌萎缩症。SMA。罕见病。治疗费年均四十万。进口药,医保不报。”我关了视频。“他可以把困难说出来。公司有员工互助基金。”沈若合上案卷。“他说不出口。跟了陆总十五年,从客厅创业开始的元老。开口要钱,他觉得是背叛。”她把案卷装进档案柜,锁好。“林知意的律师今天联系我了。想谈认罪认罚。她的意思是,许昭让她传文件时,说的是竞品分析报告。她不知道是核心算法。”“文件页眉有我的名字。属性标注了‘保密’。”“律师说,她以为是公司内部常规保密标注。没往商业秘密上想。”办公室里很安静。窗外有鸟落在空调外机上,扑棱几下飞走了。“沈律师。”“嗯。”“你信吗?”她转过来看我。单眼皮,目光平直。“我的职业不允许我回答这个问题。但你的问题,我记着。”她把一张纸推过来。检察院的受案回执,盖着红章。案由:侵犯商业秘密罪。被控告人:许昭远、马宏盛、林知意。右下角日期是今天。“接下来是检察院审查起诉。证据链我重新梳理过——许昭的登录录屏对应IP,马宏盛的后台日志对应网吧监控,林知意的传输记录对应路由器流量审计。每一环都有时间戳,区块链存证。检察院退回补充侦查的可能性很低。”“需要我做什么。”“等。”她站起来。窗外夕阳照进来,把她的影子投在案卷上。“宋砚,你等得够久了。不差这几个月。”
许昭的批捕通知书下来那天,陆行舟在羊肉汤馆等我。丁老板端来两碗汤。一碗咸,一碗淡。我们调换过来,他的咸,我的淡。这个动作做了七年,不需要说话。他掏出一份文件,封面印着“股权结构调整方案”。翻到最后一页,股东列表里,我的名字从隐名代持方移到了显名股东栏。持股比例23.6%,旁边是他自己的名字,31.2%。“签了。这是你应得的。”我签完,把文件推回去。“马宏盛那边,公司打算怎么处理。”他喝汤的动作停了一下。“解除劳动合同。追索期权损失。配合司法程序。”“他女儿的治疗费呢。”陆行舟放下碗。“公司补充医疗保险覆盖不了SMA。员工互助基金的最高额度是二十万。盛恒给的三百万,他全部用在女儿身上了。自己没留。”丁老板端来一碟糖蒜。他自己腌的,醋放得多,酸得冲鼻子。“行舟。你还记不记得创业第一年,马宏盛家的客厅。我们几个挤在沙发上改BP,他女儿在旁边的爬行垫上睡着了。她妈给她盖了一条粉红色的毯子。那毯子现在还在。”“记得。”“她今年十三岁了。”陆行舟把糖蒜夹进碗里,没吃。“你想怎么做。”“马宏盛侵占的期权,估值大概一百二十万。他名下那套房子,法院已经在走拍卖程序了。拍卖款会优先赔偿我的期权损失。”我停了一下,“赔偿到位以后,剩余的钱,我捐给公司的员工互助基金。指定用途——马晓的治疗费。”羊肉汤的热气在我们之间升起来。“你跟他非亲非故。他害你。”“他害我,跟他女儿需要治病,是两件事。”陆行舟把糖蒜嚼了,酸得他眯起眼。“宋砚,你这人有个毛病。”“什么。”“太能算了。”他端起碗,把汤喝完,碗底剩了几粒枸杞。他用筷子一颗颗夹起来吃掉。“行。互助基金的事,我来办。但有一个条件。”“你说。”“马宏盛出狱以后,不能回公司。这是底线。”“好。”他放下筷子。“还有一件事。盛恒科技今天发了公告。许茂林辞去董事长职务,董事会改选。”“然后呢。”“股价连续跌停三天。他们的B轮融资方已经发函要求回购。我给投资部批了一个授权——如果盛恒进入破产重整程序,云帆参与竞购。”他把一份投资意向书草案推过来。标题:关于云帆科技参与盛恒科技资产重整的可行性分析。我翻开,第三页写着拟收购资产范围:核心专利十七项、研发团队四十三人、数据中心一处。不包括许茂林父子的任何权益。“你想用他们的技术?”“不。技术我们自己有。”他把意向书翻到最后一页,“我要的是他们的客户。盛恒在政企市场做了十二年,客户关系是许茂林最大的资产。现在这些客户看着许昭的案子,正在找下家。我们接。”窗外城中村的巷子暗下来。有人骑着电动车经过,车灯在墙上划出一道白。“行舟。”“嗯。”“当年我们创业,说要做一家干净的公司。”“记得。”“现在还算数吗。”他把意向书装回文件袋,封好。“算。所以你来做CTO。技术你来管。人你来管。干净不干净,你说了算。”丁老板过来收碗,看见桌上文件袋上的公司logo。他擦了擦手,没说话,把碗摞起来端走了。“老丁。”陆行舟叫住他。“哎。”“你这店开了多少年了。”“二十三年。”“我们再来二十年,你还在不在了?”老丁端着碗往厨房走。“你们来,我就在。”
云帆科技全员大会定在周四下午。研发部、产品部、市场部、行政部,三百多人把报告厅坐满了。有人从别的楼层搬了椅子挤在过道里,HR小姑娘挨个发矿泉水。陆行舟站在台上,背后的大屏幕亮着。他没用PPT,屏幕上一张照片——工牌。蓝底寸照,工号2847,姓名宋砚。照片是三年前入职时拍的。头发比现在长,眼神比现在愣。“这个人,跟你们一起吃了三年食堂。”他按翻页键。第二张照片:食堂,宋砚端着餐盘坐在角落。不锈钢餐盘里一荤两素,米饭上浇了菜汤。拍照的人显然没让他发现。“写了三年代码。”第三张照片:深夜的研发部,宋砚的工位亮着灯。他背对镜头,屏幕上密密麻麻的代码。桌上放着一杯凉掉的咖啡,旁边是许昭送的那杯美式,少糖。“被克扣了三年期权。”第四张照片:期权管理系统截图。授予记录显示宋砚名下期权数量为0。取消操作人:马宏盛。取消原因:因故。“他一句话没说。”陆行舟把遥控器放下。“为什么?”全场安静。空调出风口嗡嗡响。“因为他要抓住的,不是偷期权的人。是偷核心技术的人。”他往旁边退了一步。“宋砚。你上来。”我从最后一排站起来。三百多双眼睛转过来。有人开始鼓掌,然后更多,掌声从后排涌向前排。我走过过道时,研发部的老周拍了一下我的肩膀。他没说话,眼眶有点红。台上。陆行舟把话筒递给我。我看着下面的人。三年来每天一起吃食堂的人,一起加班的人,一起在茶水间吐槽食堂饭菜太咸的人。他们不知道我是谁。我也不完全知道他们是谁。但这三年,是真的。“三句话。”报告厅安静下来。“期权发到每个人手里之前,只是一张纸。但核心技术被偷走之前,是大家写了十年的代码。”前排有人低下头。研发部的李工,从第一行代码就在的人。他摘下眼镜,用衬衫下摆擦。“纸可以补发。代码补不了。”掌声从中间炸开。老周站起来了,然后是李工,然后是更多人。有人吹口哨,有人用矿泉水瓶敲椅子扶手。声音在报告厅里回荡。我举起手。掌声慢慢停下来。“第三句。”我摘下脖子上的工牌。蓝底寸照,2847。三年来第一次在公开场合摘下来。“从今天起,CTO办公室的门开着。谁发现代码被偷,直接来找我。”我把工牌放进口袋。“不用预约。”掌声再次炸开时,陆行舟走到台前。他举起手机,对着台下拍了一张。三百多个人,有的在鼓掌,有的在擦眼睛,有的举着手机拍台上。他当天发的朋友圈只有一张照片。配文:“我的合伙人。”我没评论。沈若在下面回了两个字:“恭喜。”陆行舟回她:“你呢?”她没再回。散会后我回到2847号工位。桌上还是老样子——显示器,键盘,一盆快枯死的绿萝。便签贴在显示器边框上,是我三年前写的字。“查到为止。”四个字。墨水褪了点色,但还在。我把便签揭下来,折好,放进口袋。绿萝的土干了。我接了一杯水浇进去,水从盆底渗出来,洇在桌面上。手机震。沈若发来一张照片。检察院的起诉书,案号检刑诉〔2024〕xx号。被告人:许昭远、马宏盛、林知意。案由:侵犯商业秘密罪、职务侵占罪。起诉书右下角是检察官的签名。下面附了一行消息:“法院立案了。开庭预计下月中旬。”我回了一个字:“好。”她又发了一条。“你浇绿萝了吗?”我低头看那盆绿萝。浇下去的水已经被土吸干了。叶子还是耷拉着。拍了张照片发过去。她回:“浇透。不是浇表面。”我把杯子再接满,慢慢浇。水从盆底一滴一滴渗出来,在桌面上聚成一小滩。窗外的夕阳照进来,照在湿漉漉的桌面上。绿萝的叶子被光照透,叶脉清晰。有一片新叶蜷在枯叶中间,很小,很绿。还没死。
开庭前一周,沈若约我在一家湘菜馆吃饭。菜很辣。她面不改色地吃剁椒鱼头,额头沁出一层薄汗,拿纸巾按掉,继续吃。我把水杯推过去,她没喝,用筷子把鱼眼睛挖出来放进我碗里。“尝尝。最好吃的部分。”我吃了。辣得舌头发麻。她把筷子放下。“林知意的律师今天又联系我了。”“说什么。”“她问,如果认罪认罚,量刑建议能降多少。”沈若夹了一块辣椒,嚼了,“我说,看认罪态度。以及有没有退赃退赔。”“她要退什么?”“你的期权损失。她作为共犯,承担连带赔偿责任。”沈若放下筷子,“她还问了一件事。”“什么。”“你能不能出具谅解书。”邻桌有人划拳,声音很大。服务员端着热气腾腾的菜穿堂而过。“你怎么回的。”“我说,宋砚不是我的当事人。云帆科技才是。”她看着我,“但作为你的朋友,我建议你考虑。”“考虑什么。”“谅解书签了,她的刑期能减三分之一。不签,该判多少判多少。她的律师说——她母亲把裁缝铺转让了,凑了三十万。”我把筷子放下。“那间裁缝铺,她妈踩了三十年缝纫机。”“我知道。”“三十万,是一针一脚踩出来的。”沈若没说话。“谅解书我签。但有一个条件。”“你说。”“她出狱以后,不准再碰任何与我有关的东西。包括那套房子,包括婚姻期间的共同财产,包括她妈凑的那三十万。”“那三十万你不要?”“不要。让她还给她妈。”沈若看了我很久。“宋砚,你知道你刚才做了什么吗?”“什么。”“你把赔偿放弃了。谅解书等于白签。”“不白签。”她等我说。“裁缝铺那台缝纫机,不应该因为我的期权被卖掉。”沈若从包里拿出一份谅解书模板,翻到附注栏。笔尖悬着。“条件写在这里。她出狱后,三十万退还其母林氏。你放弃全部民事赔偿。”“写。”她写完最后一个字,把笔放下。“开庭那天,林知意如果当庭认罪,这份谅解书会在量刑时起作用。”“嗯。”“宋砚,最后一个问题。”“你问。”“你为什么对她这么狠,又这么软?”邻桌划拳的人赢了,大声笑。服务员端来一碗免费的米汤,乳白色,冒着热气。我倒了一碗,推到她面前。“她偷了我的代码。这件事,法律上叫作侵犯商业秘密。但在家里,她是我妻子。四年。”米汤的热气模糊了她的眼镜。她摘下来擦。“这四年里,她每天做早饭。我加班到凌晨回家,玄关的灯永远亮着。她买的菜都是我喜欢的,她放的盐总是少半勺,因为我说过盐吃多了不好。”沈若戴上眼镜。“所以她偷代码的时候,你醒着。”“醒着。但没有拦。”“为什么。”“因为拦了,我就永远不会知道,她到底是被人骗了,还是自己选的。”米汤凉了。表面结了一层皮。“许昭跟她说,是普通项目资料。审讯记录里写了。她信了。”“她不是信许昭。她是愿意信。因为信了,就不用面对自己在偷的事实。”窗外天色暗了。湘菜馆门口的灯笼亮起来,红彤彤的。“所以你不恨她。”“恨过。后来不恨了。”“现在呢。”“现在——希望她把缝纫机还给她妈。”沈若把谅解书装进档案袋。“走吧。开庭见。”
法院的刑事审判庭不大。旁听席坐了不到一半人。我坐在第二排,左边是陆行舟,右边是沈若。林德厚坐在最后一排角落里。他穿了那件灰色夹克,领口的毛边还是那样。两只手放在膝盖上,看着被告席。他旁边空着一个座位——那是留给林知意母亲的。她没来。许昭被法警带进来。头发剃短了,鬓角冒出白茬。深蓝色看守所马甲,背后印着编号。他扫过旁听席,扫到我时眼神闪了一下,移开了。手腕上的疤露着。没有手表了。马宏盛跟在他后面。他瘦了很多,polo衫领口松垮垮的。走过旁听席时他看见了陆行舟。脚步顿了一下,然后低下头继续走。林知意最后一个进来。她穿着自己的衣服。一件藏蓝色开衫,领口别了一枚旧胸针——是她母亲的东西。头发剪短了,素颜。走过旁听席时她没看任何人。在被告席站定,两只手交叠放在身前。无名指上还有一圈戒痕。戒指已经取下来了。审判长宣布开庭。公诉人宣读起诉书。侵犯商业秘密罪,涉案金额巨大,证据确凿。许昭的登录录屏、马宏盛的后台日志、林知意的传输记录,一份一份在法庭大屏幕上展示。沈若作为被害单位诉讼代理人发言。她把网吧监控逐帧标注、路由器流量审计报告、区块链存证的时间戳证明——一件一件呈堂。许昭的律师做罪轻辩护。主要观点是:许昭远系从犯,受其父许茂林指使。案发后主动交代犯罪事实,认罪态度较好。马宏盛的律师强调:被告人有坦白情节,且犯罪动机是为女儿筹集治疗费。当庭提交了马晓的诊断证明和医院缴费记录。厚厚一沓,装在透明文件袋里。林知意的律师最后一个发言。“审判长,我的当事人对传输文件的事实供认不讳。但请法庭注意——她在传输文件时,并不知晓该文件属于商业秘密。”“许昭远在指使她传输文件时,谎称是‘竞品分析报告’。这一事实,在许昭远的审讯笔录中有明确记载。”他申请调取许昭远的审讯录像。法警将U盘插入设备。屏幕亮起。许昭远坐在讯问椅上,手腕上的疤被手铐遮住了。问:“林知意是否知道那份文件是核心算法?”许昭远沉默了几秒。答:“不知道。我跟她说是普通项目资料。”问:“你为什么要骗她?”答:“她如果知道是核心算法,不会帮我传。”录像停止。法庭安静了。林知意的律师继续。“我的当事人是被蒙蔽的。她在主观上没有侵犯商业秘密的故意。此外——”他拿出一份文件,“被害单位联合创始人宋砚,已向法庭提交谅解书。放弃对我当事人全部民事赔偿请求。”审判长接过谅解书。翻到附注栏时停住了。“‘条件:林知意出狱后,三十万元退还其母林氏。’”他抬头,“请被害人宋砚确认。”我站起来。“确认。”“你放弃全部民事赔偿,仅要求被告退还其母三十万元?”“是。”“为什么?”我看着被告席。林知意低着头。开衫的袖口被她攥在手里,绞着。“那三十万,是她母亲转让裁缝铺凑的。裁缝铺是她母亲踩了三十年缝纫机攒下的。三十万,是缝纫机上的一针一脚。”旁听席上有人吸鼻子。是前排一个女书记员。她低头翻卷宗,翻得很慢。“我的期权损失,法律已经给了我交代。但这三十万,不应该因为我的期权,从缝纫机上被拆下来。”审判长沉默了一会儿。然后落槌。“本庭已充分听取各方意见。鉴于案情重大,择期宣判。”法槌的声音在法庭里回荡了很久。林知意被法警带出侧门时,她回头了。目光越过旁听席,落在最后一排。林德厚还坐在那儿。两只手放在膝盖上。她嘴张了一下,没发出声音。侧门关上了。林德厚站起来,慢慢走出法庭。经过我身边时停了一步。“小宋。”“林叔叔。”“那三十万,是她妈执意要凑的。我拦过。拦不住。”他的声音很平,像在说别人的事。“裁缝铺转让那天,她妈在缝纫机前坐了一下午。什么都没缝。”他往门口走。灰色夹克消失在门外的阳光里。沈若收拾案卷。“谅解书的附注,审判长当庭确认了。”“嗯。”“你在法庭上说的那番话,缝纫机,一针一脚——林知意哭了。”“我没看她。”“我看了。”她把案卷装进公文包,“她哭的时候,用手捂住嘴。跟你在羊肉汤馆描述过的,你们领证那天她哭的样子,一模一样。”窗外法院的国旗在风里翻卷。旗杆上的绳子一下一下撞击金属杆,叮叮当当。“走吧。”我推开法院的玻璃门。阳光砸在脸上。门口台阶上蹲着一个人。许茂林。中风偏瘫后第一次在公开场合出现,左半边脸垮着,嘴角往下斜。轮椅停在台阶下面。他旁边站着一个年轻女人,应该是他女儿——许昭远的妹妹。她推着轮椅。从我面前经过时,许茂林的手抬了一下。抬到一半落回去。他女儿没停。轮椅碾过地上的梧桐叶,沙沙响。陆行舟站在车旁等我。“许茂林来了。”“看见了。”“他没进去。”“他进不去了。”拉开车门时,陆行舟叫住我。“宋砚。”“嗯。”“今天你在法庭上说的那些话,你爸要是听到了——”他没说完。我坐进车里。车窗外的梧桐叶还在往下落。一片贴在挡风玻璃上,雨刷器没开,它贴了很久。
宣判那天是周三。法庭里人比开庭时多了。记者席架着摄像机,本地法治栏目来拍摄。云帆科技泄密案这段时间在行业里传开了,微博话题阅读量过了两千万。旁听席第一排坐着云帆的员工。老周、李工,还有几个研发部的同事。他们穿着公司文化衫,胸前印着云帆的logo。老周手里攥着一顶帽子,帽檐被他捏变了形。审判长念判决书用了二十五分钟。“被告人许昭远犯侵犯商业秘密罪,判处有期徒刑五年,并处罚金人民币五十万元。犯职务侵占罪,判处有期徒刑三年。数罪并罚,决定执行有期徒刑七年,并处罚金人民币五十万元。”许昭远肩膀塌下去。法警扶了他一把。“被告人马宏盛犯职务侵占罪,判处有期徒刑三年。鉴于其有坦白情节,且赃款全部用于女儿治疗,酌予从轻处罚。”马宏盛闭了一下眼。睁开时眼眶是湿的。“被告人林知意犯侵犯商业秘密罪。鉴于其系被蒙蔽,主观恶性较小,且获得被害方谅解,判处有期徒刑一年,缓刑二年。”林知意的腿软了一下。法警扶住她。她站定,然后转向旁听席。目光找到了最后一排。林德厚坐在那儿。两只手放在膝盖上,跟开庭那天一模一样。她鞠了一躬。对着那个方向。法槌落下。判决生效。走出法院,秋天的阳光很薄。梧桐叶铺了一地,踩上去沙沙响。老周追出来,把手里那顶帽子递给我。是云帆文化衫的配套帽子,黑色,帽檐上绣着公司的logo。“宋总。大家让带给你的。”我接过来。帽檐被他捏变了形,我用手掰回去。“老周,别叫宋总。”“那叫啥。”“叫宋砚。”他咧嘴笑了。“行。宋砚。”帽子戴上去有点紧。我在研发部三年,没人知道我的头围。这顶帽子是按平均尺码做的,不太合,但能戴。沈若站在台阶下面等我。她今天没穿西装,一件深蓝色风衣,头发散着。“今天不加班?”“不加。”“去哪。”“羊肉汤馆。请你。”她跟着我上了车。城中村的巷子还是那么窄,羊肉汤馆的门脸还是那么小。丁老板看见沈若,多看了一眼,没说话,端来两碗汤。一碗咸,一碗淡。我把淡的推给她。“你怎么知道我要淡的?”“上次你说咸了。”她端起碗喝了一口,放下。“宋砚。”“嗯。”“案子结了。我最后问你一个问题。”“你问。”“从许昭入职第一天,到他在家宴上被带走。你从头到尾都知道。你看着他在你身边装了两年。看着你妻子凌晨三点传你的文件。看着马宏盛删你的期权。”她放下碗。“这两年,你是怎么过来的。”丁老板在后厨剁骨头。一刀,一刀。“我父亲退休前,办过一起泄密案。泄密方是盛恒科技的前身。案子查到的是一个临时工,拘留十五天,罚款五千。他在结案报告里写了一行批注。”“什么批注。”“临时工背不了这么大的锅。那行批注,锁进档案柜,十二年没人看。”汤的热气升起来。“十二年。许昭来面试那天,我在会议室玻璃门外看了他三秒。然后回去搜许茂林。搜完我就知道,那行批注终于可以有人看了。”“所以你是替你父亲在查。”“不全是。也替我自己。三年前我主动隐退,跟陆行舟说,公司有内鬼。他说你怎么知道。我说,因为有人凌晨三点访问我的代码库。他不知道我醒了。”沈若握着汤勺的手停在碗边。“那个人是谁。”“马宏盛。”“不是林知意?”“马宏盛是第一个。他访问代码库是为了评估期权的价值。后来许昭入职,他不再自己动手。”“所以你在家里部署路由器流量审计——是因为公司先出的事。”“是。公司的事查到最后,查回了家里。”沈若沉默了很久。“你从来没跟我说过这段。”“你没问。”她把汤勺放下,端起碗,把汤喝完。碗底剩了枸杞,她用筷子夹起来吃了。那个动作跟陆行舟一模一样。“宋砚。以后你的路由器后台,不用一个人看。”她放下筷子。“我帮你看。”羊肉汤馆的排气扇嗡嗡响。丁老板的剁骨头声停了。窗外,城中村的巷子暗下来。河边的钓鱼人开始收竿。鱼线上有时有鱼,有时没有。今天竿梢弯着。有鱼。
云帆安全芯产品发布会定在十二月。会场设在公司报告厅。台下坐着投资人、合作方、行业媒体,以及云帆的三百多名员工。背景板上只有一行字:云帆安全芯——每一次访问,都被看见。陆行舟开场。“十年前,两个大学室友在宿舍写了云帆的第一行代码。十年后,云帆的代码被偷过。”台下安静了。“被员工偷过。被竞争对手偷过。被——自己人的家人偷过。”他停顿。“偷代码的人以为,代码就是几万行文本。复制,粘贴,就是他们的了。”屏幕亮起来。许昭的登录录屏。林知意的传输记录。马宏盛的后台日志。一件一件,在大屏幕上播放。“但他们不知道。每一次访问,都被看见了。”他按下翻页键。溯源系统的界面铺满屏幕。操作日志、屏幕录屏、区块链存证,三条数据流并排滚动。每一行都带着时间戳,精确到毫秒。“这个系统,是云帆的CTO写了两年写出来的。他在写这套系统的时候,被偷了期权。被偷了核心算法。被最亲近的人偷了信任。”陆行舟让到一边。“宋砚。”我从侧台走上去。台下有人鼓掌。老周、李工、研发部的人。然后是全场。我站在台上等掌声落下。“安全芯的底层逻辑,不是防住所有攻击。”屏幕切换。一段录屏:凌晨3:15,账号songyan登录,下载算法架构说明。录屏右下角,前置摄像头画面里,林知意的脸被屏幕光照亮。“是让每一次攻击,都被记录下来。不可删除。不可篡改。不可抵赖。”录屏定格在她关掉电脑的那一帧。台下有记者举手。“宋总,这个产品的灵感来源是什么?”全场安静。我沉默了很长时间。长到主持人以为话筒坏了,往前迈了一步。“来自一个人凌晨三点偷看我电脑的记录。”没人说话了。“那晚我醒着。从凌晨三点十二分,到三点二十四分。她用了十二分钟,把我两年的代码拷走。每一秒,我都在听。鼠标点击的声音。键盘敲击的声音。她起身时椅子腿刮过地板的声音。最后是书房门关上的声音。”我把话筒放低了一点。“后来我把这些声音,写进了安全芯的异常行为识别模型。现在,它能识别超过两百种异常操作的声音特征。”台下很安静。然后有人开始鼓掌。一个人。两个人。然后是全场。掌声从最后一排涌上来。有记者在报道里写了这样一段话:“云帆科技的CTO,把他被背叛的那个凌晨,写成了一行代码。现在,那行代码保护着三千家企业的数据安全。”发布会结束,沈若在后台等我。她递过来一瓶水。我拧开盖子喝了一半。“你在台上说的那段话,我在直播里看的。”“嗯。”“你从来没告诉我,那晚你在听。”“你没问。”她把水瓶拿回去,自己喝了一口。“以后不用我问。”她把瓶盖拧上。“我会自己知道。”
盛恒科技破产重整案第一次债权人会议,在春节前一周召开。陆行舟带着云帆的投资团队坐在债权人席第一排。他面前摆着那份投资意向书,封面已经翻得起了毛边。我坐在他旁边,面前是盛恒的资产清单。十七项核心专利、四十三人研发团队、一处数据中心,纸面上值四个亿。实际价值,要看谁在买。许茂林作为债务人代表出席。他坐在轮椅上,被女儿推进来。左半边脸仍然垮着,中风后遗症比法院门口那次更严重了。嘴角的口水需要女儿不停用纸巾擦掉。他面前也摆着一份文件——破产申请书。签名处是他的名字。笔画歪斜,但每一笔都看得出来是“许茂林”三个字。会议主持人是法院指定的破产管理人。他宣读债务清单:盛恒科技现有资产2.1亿,负债4.8亿,资不抵债。最大债权人是B轮融资方,其次是供应商货款,再次是员工薪酬。陆行舟举手。“云帆科技提交的重整方案,管理人收到了吗?”“已收到。方案核心是——云帆以2.3亿现金收购盛恒核心资产,包括专利、研发团队、数据中心。收购款优先清偿员工薪酬,其次按比例清偿供应商货款。”融资方代表站起来。“我们要求全额清偿。B轮投资协议里有回购条款。”陆行舟没起身。“回购条款的前提,是盛恒不存在重大违法违规。许茂林父子涉嫌侵犯商业秘密罪,许昭远已经判了。你们的回购条款,从一开始就建立在欺诈之上。”融资方代表坐下去了。许茂林的轮椅往前动了一下。他女儿按住轮椅扶手。他抬了抬手,示意她松开。“陆总。”他的声音含混,中风后舌头不听使唤。“盛恒是我一辈子做起来的。”陆行舟看着他。“许总,你儿子也是你一辈子养大的。你让他去偷。”许茂林的手在轮椅扶手上抖。他女儿低下头。“我不是来羞辱你的。”陆行舟站起来,“我是来告诉你,盛恒的专利、团队、客户——云帆会接。不是偷。是买。”他把收购协议草案放在许茂林面前的桌上。“你签了,盛恒的四十三个人不用失业。你女儿不用再推着轮椅来开债权人会议。”许茂林看着那份协议。手抬起来,又落下。他女儿把笔递给他。他握笔的手一直在抖。笔尖戳在签名处,戳出一个墨点。名字签完了。“许”字歪得认不出。“茂”字中间少了一横。“林”字的两个木挤在一起。他女儿把协议推回来。“陆总,我爸想问——昭远在里面,能不能减刑。”陆行舟看我。我站起来。“许昭远的案子已经终审。减刑,看他自己的表现。”许茂林的手不再抖了。他靠在轮椅上,闭上眼睛。会议结束后,许茂林的女儿推着他往电梯走。轮椅碾过走廊的地毯,无声无息。我站在会议室门口,看着他们的背影。她推得很慢,经过走廊窗户时,阳光照在许茂林脸上。他仍然闭着眼。陆行舟站在我旁边。“你刚才为什么不说,许昭远在里面表现好,确实可以减刑?”“因为表现好不好,不是我说的。是监狱说的。”“你可以说一句安慰的话。”电梯门打开。许茂林被推进去。“行舟。我父亲那起泄密案,临时工拘留十五天。他后来在档案室找到那个人的名字,去他老家看过。”“然后呢。”“那个人出拘留所后,在县城开了间修车铺。我父亲到的时候,他正在钻车底。听见有人来,从车底滑出来。脸上全是机油。”电梯门关上了。“我父亲说,我是军工研究所的,十二年前你偷过我们的东西。那个人手里的扳手掉在地上。然后他说了一句话——‘那十五天,我女儿以为我出差了。’”走廊里很安静。“我父亲回去以后,在那份结案报告的批注下面又加了一行字:他的女儿以为他出差了。”陆行舟沉默了很久。“所以你给马宏盛的女儿留了治疗费。”“是。”“给林知意留了缝纫机。”“是。”“给许昭远留了什么。”“什么都没留。他女儿不用以为他出差。他本来就出差了——替他爸偷东西。”走廊尽头的窗外,城市的灯亮起来。盛恒科技的大楼就在对面,楼顶的logo还没拆。四个蓝色大字,在天色里慢慢暗下去。“行舟。”“嗯。”“盛恒收购完成后,那四个字,拆了吧。”“换成什么?”“什么都不用换。楼拆了重建。那块地上,盖云帆的新数据中心。”陆行舟看了我一眼。“你早就想好了。”“两年。”“什么两年?”“从许昭入职,到盛恒的logo拆下来。刚好两年。”他笑了,笑着笑着眼眶红了。“宋砚,你这人有个毛病。”“什么。”“太能等了。”
沈若生日那天是周六。她从法院开完庭出来,风衣领子竖着,手里抱着案卷。我车停在法院门口。她拉开车门坐进来,把案卷往后座一扔。“什么案子?”“一个讨薪的。农民工。七个包工头,两年没要到钱。”“标的额多少?”“不大。二百三十万。”“赢了?”“赢了。”她把安全带系上,“审判长当庭宣判。被告开发商的项目经理,挪用资金罪,判三年。工资由母公司连带清偿。”车开过法院门口的红绿灯。她靠在椅背上,闭着眼。“宋砚。”“嗯。”“今天是我生日。”“我知道。”她睁开眼。“你怎么知道?”“你的律师执业证编号。后六位是生日。”她转头看我。“你翻过我执业证?”“没有。你桌上放着,我扫了一眼。”车停在羊肉汤馆门口。丁老板看见我们,多端了一盘糖蒜。还是他腌的,醋放得多,酸得冲鼻子。沈若吃了两颗,酸得眯起眼,但继续吃。我从口袋里拿出一个U盘。黑色,指甲盖大小,拴着红绳。放在桌上推过去。她看着U盘。“这是什么?”“生日礼物。”她把U盘翻过来看。外壳上刻着两个字:沈若。是我的笔迹,用刻字笔一刀一刀划上去的。“里面是什么?”“我的所有密码。电脑的。手机的。核心算法库的。还有一份文件。”“什么文件?”“隐名代持协议扫描件。”她握着U盘的手停在桌面上。“为什么给我这个?”丁老板端来两碗汤。一碗咸,一碗淡。我把淡的推给她。“三年前我查内鬼,是把自己变成最不可信的人,去抓最可信的人。”汤的热气在我们之间升起来。“现在我想反过来。”她没动那碗汤。把U盘插进随身带的笔记本电脑。屏幕亮起来,里面只有一个文件夹,命名:沈若。打开。一份文档:《关于宋砚个人事项的说明》。第一行。“从今天起,没有秘密。”她往下翻。第二段:家庭住址,身份证号,银行账户,社交账号密码,童年养过的狗的名字,第一次写代码的年龄,大学挂过的科目。再往下。第三段:父亲的名字,退休单位,那起泄密案的案卷编号,临时工出狱后开的修车铺地址。再往下。第四段:林知意传输文件那晚,我醒着。鼠标点击的声音,键盘敲击的声音,椅子腿刮地板的声音,门关上的声音。每一种声音持续的时间,精确到秒。她翻到底。文档最后一行字。“以上,沈若可以随时查看,随时修改,随时删除。宋砚不设任何权限。日期:今天。”她合上电脑。“你写这个文档,写了多久?”“从你问‘这两年你是怎么过来的’那天开始写。每天晚上加完班写一点。”窗外城中村的灯一盏一盏亮起来。河边的钓鱼人还没收竿。“宋砚。”“嗯。”“你给过别人这个吗?”“没有。”“为什么给我?”我端起那碗咸的汤,喝了一口。“因为你帮我浇绿萝的时候,问的是‘浇透了吗’,不是‘怎么还没死’。”她低下头。U盘上的红绳从她指缝间垂下来,轻轻晃。那晚送她回家。车停在她公寓楼下。她解开安全带,没下车。“宋砚。”“嗯。”“你的文档里,有一件事写错了。”“哪件。”“你说你第一次见我,是在律所会议室。”她转过来。“其实更早。三年前,云帆A轮融资的尽调会。我代表投资方,你代表公司。会上你打开一个代码演示,手在键盘上敲。很快。”“我记得那个会。你坐在对面,全程没说话。”“我说了。散会时你说演示的代码有一处bug。我说,第三行少了一个分号。”车内的灯暗下去。“你当时看了我一眼。然后低头把分号补上。”“对。”“那一眼,你看了三秒。”我没说话。“三秒。我数过。”她推开车门。夜风灌进来。走到公寓门口时回头。“U盘,我收下了。权限,我不改。以后你的路由器后台,我帮你看。你的绿萝,我帮你浇。你的汤,咸的归你,淡的归我。”门关上了。楼道的声控灯一层一层亮起来,又一层一层暗下去。她的脚步声在楼梯间里回响。五楼。门锁转动的声音。然后灯灭了。我坐在车里。手机亮了一下。她发来一张截图。是那份文档的属性信息。创建时间:今天。修改时间:今天。访问时间:刚刚。下面附了一行字。“第四段,你写的那些声音——鼠标,键盘,椅子,门。每一种持续的时间。”“我在看。”“以后这些声音,换我来听。”我把手机放下。发动车。后视镜里,那栋楼的五楼窗户亮着灯。窗帘没拉。她的影子在窗前晃了一下。然后灯灭了。
春节后开工第一天。云帆科技新数据中心奠基仪式。地块就是盛恒科技原来的位置。那栋楼的logo已经拆了。四个蓝色大字卸下来那天,陆行舟拍了张照片发给我。配文:“拆了。”我回了一个字:“好。”奠基现场搭了简易台子。背景板上有效果图——一栋灰色建筑,线条硬朗,不像写字楼,像堡垒。陆行舟说这是他特意要求的,数据中心不要好看,要安全。台下站着云帆的三百多名员工,以及从临江县来的劳务工人。王海东也来了。他穿着那件白衬衫,领口熨得笔挺。小雨没跟着,他要赶下午的高铁回去。陆行舟上台。他手里拿着一把系红绸的铁锹。“十年前,我和我的合伙人在宿舍写第一行代码时,没想过会有今天。三年前,他隐姓埋名进了自己的公司,我也没想过会有今天。一年前,他在我办公室打开那封期权取消的邮件,我还是没想过会有今天。”他把铁锹举起来。“但今天来了。这栋数据中心,建在盛恒科技原来的地基上。不是报复,是记住。记住代码可以被偷,但偷不走写代码的人。记住信任可以被背叛,但背叛不了重新信任的人。”他把铁锹插进土里。红绸在风里展开。“第一锹,我来。”他把土铲起来,扬进基坑。“第二锹,宋砚。”我走过去,接过铁锹。锹把上还留着他掌心的温度。我把土铲起来,扬进去。“第三锹——”他看向台下。“马晓。你来。”人群分开。一个坐在轮椅上的女孩被推出来。十三岁,很瘦,腿上盖着粉色毯子。推轮椅的是她舅舅。马晓的手握不住铁锹。她舅舅帮她扶着锹把,她的手搭在上面。土铲起来,扬得很低。大部分落在基坑边上。但她笑了。陆行舟蹲下来,把她毯子的一角掖好。那条毯子是粉色的,边缘磨得起了毛球。“马晓,你爸爸以前是我们公司的元老。工号007。这栋数据中心建成以后,会有一间机房用他的工号命名。007号机房。”马晓的手放在毯子上。“我爸爸还能回来上班吗?”陆行舟握着她的手。很小,很凉。“你爸爸现在在别的地方工作。等他完成了,就回来。”马晓点了点头。她舅舅把她推回人群。粉色毯子在风里鼓起一块。奠基仪式结束,我和陆行舟站在基坑边。土还湿着,奠基的几锹土堆成一个小包。“马宏盛知道吗?数据中心的事。”“知道。我写信告诉他的。他回信说,007号机房的空调,能不能装好一点。他走之前,研发部的空调老坏。”“你怎么回的。”“我说,装最好的。你回来验收。”风吹过来。基坑里的土腥味升起来。“行舟。你刚才对马晓说的话,‘等他完成了就回来’——她信了。”“我知道。”“三年以后呢?”陆行舟弯腰捡起一块土坷垃,捏碎。“三年以后,她十五岁了。会有人告诉她,爸爸说的‘别的地方’是哪里。”他把碎土撒回基坑,“但今天,她信了。她笑的时候,跟三岁那年在她家客厅睡着时一模一样。”他站起来,拍了拍手上的土。“走吧。羊肉汤。”奠基仪式的红绸还插在土里,风把绸子吹得猎猎响。像一团火,在灰色工地上烧着。
云帆安全芯上线半年后,成了行业标准产品。三千家企业客户,日均拦截异常操作超过十二万次。那套操作溯源系统被工信部列为推荐标准,名字写进了白皮书。行业年度科技人物评选,我的名字在候选人名单里。陆行舟比我先知道,截图发过来时我正在机房调试新设备。配文:“你被提名了。”我回:“谁报的?”“组委会自己选的。不是我。”颁奖礼在城东的会展中心。我没去。那天是周五,羊肉汤馆的约定日。陆行舟替我领的奖。他上台时把奖杯举了一下,然后放下。主持人把话筒递给他。“宋砚今天没来。他在羊肉汤馆等我。”台下笑了。“那家店开了二十三年,老板姓丁。每周五晚上,我们俩坐在最角落那张桌子,两碗羊肉汤,一碗咸,一碗淡。”他停顿。“为什么一碗咸一碗淡?因为七年前我们穷,两个人凑四十块钱点一个大份。大份的汤,盐放得多。他口味淡,每次喝之前往碗里兑开水。后来有钱了,丁老板还是习惯给我们做咸的。他也习惯了喝咸的。”他看向镜头。“这个人,三年前隐姓埋名进自己的公司查内鬼。被偷了期权,被偷了代码,被最亲近的人偷了信任。他把这些,写成了一套系统。现在那套系统每天保护着几万家企业。他今天没来,因为羊肉汤馆的约定比奖杯重要。”他把奖杯放下。“这个奖,我带回去。放公司书架上。旁边摆着他的2847号工牌。”台下掌声响了很久。后来那段视频被传到网上。标题被改了好几次,最后定下来的是《一碗咸一碗淡:科技公司CTO和他的羊肉汤》。丁老板的外甥看到了,拿手机给他看。他擦着手看完,说了句“拍的还行”,转身进了后厨。那晚他多给我们切了一碟羊肉,没要钱。奖杯放在公司书架上的第二天,研发部的新人跑来参观。小姑娘刚毕业,盯着奖杯底座上的刻字看了半天。“宋总,这上面写的是‘年度科技人物’,为什么获奖理由写的是‘他把被背叛的声音写成了代码’?”我正蹲在机房理线。光纤很细,稍用力就断。我把线一根根顺好,扎带束紧。“因为组委会问我获奖感言。我说,不知道说什么。他们问,那你写安全芯的时候在想什么。我说,在想凌晨三点十二分听到的声音。”小姑娘没再问了。她出去时把机房的门轻轻带上。我把最后一根光纤固定好。机柜上的指示灯一明一灭,绿色的,像路由器上的灯,像烟雾探测器上的红点,像那晚书房门缝下漏出的光。门缝下的光持续了十二分钟。从凌晨三点十二分,到三点二十四分。然后灭了。椅子腿刮过地板。门关上的声音。我坐在机房里。新机柜的散热风扇嗡嗡转。安全芯系统正在部署。屏幕上的代码一行行滚动。那些声音不会再有了。但所有声音都会被记住。这是安全芯的底层逻辑。也是我的。
林知意的缓刑考验期从宣判那天开始算。按规定,她每个月要到司法所报到一次,汇报行踪、工作、思想动态。其余时间可以正常生活,但不能离开户籍地所在市。她回了母亲那里。裁缝铺转让后,她母亲在超市找了份保洁的活。每天早上五点半出门,晚上八点回来。围裙换成了超市的蓝色工装,缝纫机没了,但手上的茧子还在。林知意在一家服装店当导购。月薪三千二,提成另算。店在县城商业街,卖的是平价女装。她以前在时尚杂志写穿搭指南,现在帮试衣服的顾客拉拉链。有人拍过她的照片发到网上。她蹲在地上帮顾客挽裤脚,嘴里叼着软尺。配文是:“云帆泄密案当事人,现在在县城卖衣服。”评论区分两派,一派说她活该,一派说判得够轻了。我刷到过那条微博。没点开评论。五月的一天,沈若转发给我一封邮件。发件人是林知意的社区矫正工作人员,收件人是盛合律所。邮件里说,林知意申请了一次外出,去邻市的一家裁缝店——有人在那家店看到一台老式缝纫机,蝴蝶牌的,跟她母亲转让的那台很像。她想去确认。申请批准了。当天往返。晚上沈若又转来一封邮件。是工作人员写的反馈:“确认结果是,那台缝纫机不是她母亲的那台。蝴蝶牌,同年份,同型号,但机头上的磕痕位置不对。她母亲那台的磕痕在右侧,这台在左侧。她在那家裁缝店门口站了很久。店主说,你要不要进来看看。她进去了。出来时手里拿着一小片碎布头,说是缝纫机上夹着的。我问她,找到缝纫机以后想做什么。她说,买回来。”“然后我问,买回来谁用。她说,我妈用了一辈子,该我用。”我关掉邮件。窗外,翡翠湾三期的河在夕阳下泛光。那天晚上,我打开那个命名为“不再打开”的文件夹。里面只有一张照片——林知意站在县城裁缝铺门口的背影。上传时间是去年秋天,她从看守所出来那天。我把照片删了。回收站也清空了。然后新建一个文档。打了一行字。“那台缝纫机的磕痕在右侧。”存档。关闭。缝纫机能不能找回来,我不知道。但她站在裁缝铺门口,手里攥着那片碎布头——这个画面,我记下了。不是原谅。是记住了。
许昭远的判决生效后,从看守所转入监狱服刑。第一监狱在省城北郊,高墙,铁丝网,武警岗哨。探视日是每月最后一个周六。他的妹妹来过。许茂林没来。中风后偏瘫加重,轮椅也坐不稳了,大部分时间卧床。疗养院的护工说,他床头不放照片。儿子的,女儿的,都没有。我第一次也是唯一一次去探视他,是判决生效半年后。不是去看他,是监狱方面通知——许昭远申请了职业技能培训,想学编程。监狱的计算机教室是云帆安全芯的试点单位。他来上课,用的是我写的系统。我没进去。车停在监狱门口,隔着铁丝网,能看见操场上放风的人。深蓝色囚服,剃短发,分不清哪个是他。沈若坐在副驾驶。“为什么不进去?”“不知道跟他说什么。”“你可以说,那套系统是你写的。”铁丝网上停着一只鸟,灰色的,叫不出名字。“他知道。监狱的计算机教室门口贴着安全芯的logo。他每天上课前,都要从那行字前面走过去。”鸟飞走了。“沈若,他学编程,学的是安全防护方向。课程介绍里写着‘基于云帆安全芯架构’。他的上机账号,每次登录都会生成操作录屏。区块链存证,不可篡改。跟他当年偷代码时触发的是同一套系统。”“他知道吗?”“知道。第一次上机,系统弹窗提示‘本次操作将被全程记录’。他点了‘确认’。”沈若沉默了一会儿。“所以他每天点的那个‘确认’,就是他对你说的话。”我发动车。监狱在后视镜里越来越小,最后缩成灰色的一点。“走吧。”车开上绕城高速。两边的杨树刚发芽,嫩绿色,被风吹得往一边倒。“宋砚。”“嗯。”“你以后还会来吗?”“不会了。”“那今天为什么来?”我把车窗摇下一条缝。风灌进来,带着城外泥土的味道。“来确认一件事。”“什么事?”“他点‘确认’的时候,系统录屏会保存三十秒。前置摄像头会拍到他的脸。”沈若没说话。“我没看。录屏权限我移交给了监狱管理员。”“为什么?”“因为他每天点‘确认’时知道自己在被录。但不知道录屏的人是我,还是不是。”风把杨树吹得哗哗响。“这个不知道,就是他服刑的一部分。”我把车窗关上。风被隔在外面,杨树的声音没了。“走吧。羊肉汤。”
马宏盛的女儿马晓,病情稳定后由舅舅接走抚养。她舅舅在临江县开了一家五金店,门面不大,货架上摆满水管、电线、螺丝刀。店后面隔出一小间,是马晓的房间。墙上贴着她画的画,蜡笔画,画的是三个人。高的那个是舅舅,矮的那个是她自己。还有一个中等个的,站在他们旁边。那个人穿着灰色polo衫,左手腕戴着手表。画的右下角写着“爸爸”。马宏盛在监狱里每月写一封信给女儿。信纸是监狱统一发的,抬头印着“某某监狱信笺”。他的字写得大,一笔一划。第一封信写的是:“晓晓,爸爸在出差。这里很远,信号不好,不能打电话。你要听舅舅的话。按时吃药。”第二封信写的是:“晓晓,爸爸看到你画的画了。画得真好。爸爸的手表还在,等回来给你看。”第三封信写的是:“晓晓,爸爸听舅舅说你能自己坐起来了。爸爸很高兴。”第四封信写的是:“晓晓,爸爸学会了一样新东西。监狱里的计算机课,教的是安全芯系统。老师说,这套系统是爸爸以前的公司做的。爸爸听得很认真。”第五封信写的是:“晓晓,今天上课,老师点我上去演示。我点开操作日志,里面有一条记录。时间是很久以前,凌晨2:17。操作类型是‘期权取消’。我看了很久。老师说,马宏盛,你可以下去了。我没动。”第六封信写的是:“晓晓,爸爸今天哭了。”这些信的复印件,是马晓的舅舅寄给我的。信封里附了一张纸条:“宋总,马宏盛说,这些信你可以看。晓晓不知道我在寄给你。她说,爸爸信里提到的‘宋总’,她想见一见。”那年秋天我去了临江县。五金店在县城老街上。门前的梧桐树落了一地叶子。舅舅在柜台后面修一个电饭煲,螺丝刀拧到一半,抬头看见我。“宋总?”“叫我宋砚。”他放下螺丝刀,在围裙上擦手。然后朝后面喊:“晓晓,有人来看你。”马晓的房间门推开。她坐在轮椅上,腿上盖着粉色毯子,边缘磨得起了毛球。毯子跟奠基仪式上的是同一条。“你是宋叔叔?”“是。”她拿起桌上的一封信。信封已经拆开了,边角磨毛了。“爸爸说,他取消过你的期权。”“是。”“他说他做错了。”“是。”她把信放下来。“爸爸还说,你把期权赔偿的钱,捐给我治病了。”我没说话。她把手放在粉色毯子上。“宋叔叔,我爸爸什么时候能回来?”五金店外面,梧桐叶还在落。舅舅把修好的电饭煲放到架子上。“还有两年。两年后,你爸爸就回来了。”她点了点头。然后从枕头底下拿出一张画。蜡笔画,跟贴在墙上的那些一样。画面上四个人。高的那个是舅舅,矮的那个是她。中等个的那个是爸爸,穿着灰色polo衫,手腕上有手表。还有一个人,站在爸爸旁边。戴着眼镜,穿着深灰色衬衫。“这个是你。”右下角写着:宋叔叔。我接过那张画。蜡笔涂的颜色不均匀,有些地方用力太重,蜡起了疙瘩。“我收下了。”她笑了。缺了一颗牙,笑起来漏风。走出五金店,梧桐叶落了一肩膀。我把画折好,放进外套内袋。舅舅追出来。“宋总——”“叫我宋砚。”他搓着手。“晓晓那幅画……马宏盛让她画的。他在信里写,你把期权赔偿的钱捐给晓晓治病。他就写了一句话——‘晓晓,画一张宋叔叔。画在爸爸旁边。’”梧桐叶从枝头脱落,打着旋落下来。“她问,爸爸,宋叔叔是谁。他回信说,是爸爸欠了的人。”我把画从内袋里拿出来。四个小人,蜡笔涂的颜色。马宏盛画的自己,手表画得特别大,占了半条胳膊。“他欠的,已经还了。”梧桐叶落在我肩上,又滑下去。“他不用再欠了。”
沈若的律所开了第四家分所。在临江县。分所开在五金店同一条街上。门面不大,玻璃门上贴着“盛合律所”四个字,旁边是一行小字:法律援助工作站。开业那天,县里来了不少人。有之前在省城找她打过讨薪官司的工人,有听说“不收钱”来的老人,也有五金店的街坊邻居。马晓被舅舅推着来了。轮椅上挂着那幅四个人的画。她把画送给沈若。“沈阿姨,这个给你。”沈若接过来。看了很久。“晓晓,为什么把画送给我?”“因为宋叔叔的画,我已经给宋叔叔了。这张是给你的。爸爸说,沈阿姨是帮宋叔叔的人。”沈若把画收进包里。跟之前我那张U盘放在一起。开业仪式很简单。沈若在门口说了几句话。“临江分所不做别的。只做一件事——帮要不到钱的人要钱。帮被欺负的人打官司。帮不知道该找谁的人,找到该找的人。”她停顿。“我父亲在工地上摔断过腿。包工头不给医药费。我妈去工地跪着要钱,被人拖出来。后来是一个法律援助律师帮我们打赢的。那个律师不要钱。”她看着台下。阳光照在眼镜片上。“他跟我说了一句话。小林,法律是穷人的武器。前提是你得会用。从那天起,我决定做那个教人用武器的人。”台下有人鼓掌。是五金店的舅舅。然后更多人。开业仪式结束,人群散了。沈若站在门口,看着玻璃门上那行字。法律援助工作站。“宋砚。”“嗯。”“你记得我问过你,为什么帮我。”“记得。你说,你在那个讨薪案的老瓦工身上,看到了自己。”“对。但还有一件事,我没说。”阳光把玻璃门上的字投在她脸上。法律援助工作站,七个字,反着的。“那个老瓦工拿到钱以后,请我吃饭。他端着一杯酒说——林律师,我这辈子头一回觉得,老实人也有人管。他说完,我去了洗手间。哭了一场。”她转身看我。“不是因为感动。是因为我父亲,当年没人管。”风吹过来。街上梧桐叶哗哗响。“所以临江分所,不是帮你。是帮我自己。”她推开玻璃门。门上的风铃响了。“以后临江县的工人,不会没人管了。”分所开业第一个案子,是五金店隔壁水果摊大姐的离婚案。老公在外面有人,转移财产,把她和女儿赶出家门。沈若没收钱。庭上,对方律师被她说得哑口无言。大姐拿到房子和女儿抚养权那天,拎了一篮子橘子来分所。橘子很甜。她把橘子放在沈若桌上,鞠了一躬,走了。沈若剥了一个橘子。皮撕开时,汁溅出来,空气里都是酸甜味。她分了一半给我。“宋砚。”“嗯。”“你知道吗。这篮橘子,比我打过的任何一个几千万的案子,都值。”橘子很甜。我知道。
年末。羊肉汤馆。丁老板的腰不行了。站久了疼,他儿子从外地回来接手。老丁不放心,每天还来店里坐着。不干活,就坐在收银台后面。有人进门,他抬头看一眼。认出熟客,点一下头。他儿子手艺不如他。汤时咸时淡。有一次咸得陆行舟喝了一口就放下。老丁看见了,拄着拐杖站起来,走进后厨。里面传来他训儿子的声音。锅盖响,勺子响。然后他亲自端出两碗汤,一碗放在陆行舟面前,一碗放我面前。陆行舟喝了一口。“老丁,还是你做的对味。”老丁拄着拐杖站在桌边。“以后我不在了,你们也来。他做的不对,你们就说。多说说,他就会了。”他转身走回收银台。拐杖拄地,一下,一下。陆行舟把汤喝完。碗底剩了枸杞,他夹起来吃了。“宋砚。”“嗯。”“安全芯今年签了三千家客户。营收九个亿。研发部扩到两百人。”“嗯。”“马宏盛的女儿上个月能站起来了。扶着墙能走几步。”“我知道。她舅舅发了视频。”“许昭远在监狱里考了计算机等级证书。安全芯方向。他是那一批学员里分数最高的。”“我知道。”“林知意找到那台缝纫机了。在邻省一个小县城。蝴蝶牌,同年份同型号,机头磕痕在右侧。她攒了八个月工资买下来。寄给了她母亲。物流单上写的是——还给妈妈。”汤碗空了。“你知道的比我还多。”窗外城中村的巷子暗下来。河边的钓鱼人收竿了。今天竿梢弯得很深。钓到鱼了。他把鱼从钩上摘下来,看了看,又放回水里。“行舟。你知道我为什么知道这么多吗?”“为什么?”“因为我不再等了。”老丁的儿子端着两碗新汤出来。放下时手不稳,洒出来几滴。他用抹布擦掉。“陆总,宋总。我爸说,这两碗汤不收钱。他说——谢谢你们,等了他这么久。”后厨里,老丁的拐杖靠在灶台边。他坐在凳子上,背对着门口。肩膀微微抖。陆行舟端起那碗新汤。“不白喝。”他喝完。我也喝完。走的时候,陆行舟在收银台上压了一沓钱。老丁看见了,没说话。我们走出门,身后传来他训儿子的声音:“这两碗,以后你做。盐少放。宋总淡口。”门关上了。巷子里很暗。羊肉汤馆的灯从门缝漏出来,照着脚下的路。走出一段,陆行舟停下。“宋砚。”“嗯。”“明年你生日,我送你一样东西。”“什么。”“2847号工牌。你摘下来那天,我从你桌上拿的。”他掏出来。工牌上还有那盆绿萝干枯的叶子碎屑。“一直放在我办公室抽屉里。明年你生日,我把它装裱好,挂在数据中心007号机房门口。”他把工牌放回口袋。“旁边写一行字:宋砚,工号2847。在此岗位,查到为止。”风吹过来。羊肉汤馆的灯在身后越来越小。“走吧。”“嗯。”城中村的尽头,河还在流。钓鱼人已经走了。水面上的灯光碎成一片。像有人把一袋星星倒进河里。明年。等明年。
陆行舟送我的生日礼物,比他说的时间早了。装裱好的2847号工牌挂进007号机房那天,是数据中心正式投入使用的日子。工牌被放在一个深色木框里,玻璃面,防反光。旁边一行小字刻在铜牌上:宋砚,工号2847。在此岗位,查到为止。铜牌右下角还有一行更小的字:绿萝已浇水。是沈若刻上去的。数据中心启动仪式很简单。陆行舟推上电闸,机柜的指示灯一排排亮起来,绿色的光从地板蔓延到天花板。散热风扇开始转动,低沉的嗡鸣声填满整个空间。007号机房在走廊尽头。门牌是不锈钢的,上面的数字007是马宏盛当年的工号字体。门推开,空调的凉意扑面而来。机柜整齐排列,每台机柜的左上角都贴着安全芯的logo。陆行舟站在2847号工牌前面。“马宏盛写信来,说007号机房的空调装得好。研发部以前的空调老坏,夏天他拿扇子扇。”他的手放在机柜上。金属冰凉。“他说等回来验收。”机房里的风扇声很均匀,像呼吸。“我回信了。说,等你。”数据中心正式上线那天晚上,我做了一个梦。梦里的时间不对。是凌晨3:12。书房门开着。林知意坐在电脑前,屏幕光照着她的脸。鼠标点击。键盘敲击。她起身,椅子腿刮过地板。走到门口,门关上了。梦里我站在书房外面。手放在门把上。只要推开,就能看见她的脸。但门把转不动。我使劲转,金属门把硌得手心生疼。门还是没开。然后门缝下的光灭了。醒了。卧室里很暗。沈若睡在旁边,呼吸均匀。窗外的城市安静着。窗帘缝隙漏进来一点光,照在天花板上,像那晚门缝下的光。我起身去客厅。没开灯。路由器在电视柜下面,指示灯一明一灭。白色的塑料壳上落了一层薄灰。我用手指擦掉。手机亮了。沈若。“又做梦了?”“嗯。”她披着外套走出来,在我旁边坐下。客厅很暗。路由器的灯一明一灭。“还是那扇门?”“嗯。门把转不动。”她没说话。把手放在我手心里。“梦里的门,转不动就不转了。”窗外的光从窗帘缝隙漏进来。“现实的门,你推开过。”她靠在我肩上。“羊肉汤馆的门,律所会议室的门,法院的门,数据中心007号机房的门。你都推开了。”路由器的指示灯规律地明灭。“剩下的门,不用你一个人推。”我把她的手握紧。窗帘缝隙的光慢慢变亮。天快亮了。沈若站起来,走到路由器旁边。蹲下,把电源线拔掉,等了片刻,重新插上。指示灯重新亮起来。绿光在她脸上跳了一下。“重启了。”她走回来,在我旁边坐下。“以后你做噩梦,我就重启路由器。”窗外的天亮了。城市的轮廓从暗蓝色里浮出来,先是最高的几栋写字楼,然后是住宅楼,然后是河。翡翠湾的南河,水面上开始有光。“沈若。”“嗯。”“路由器不用重启了。”“为什么。”“梦里的那扇门,我刚才推开了。”她看我。“门后面是什么?”“书房。空的。电脑关着。椅子上搭着她那件鹅黄色的连衣裙。阳光从窗户照进来,照在裙子上。”“然后呢。”“然后我关上门。醒了。”窗帘缝隙的光铺在地板上。新的一天。路由器的灯一明一灭。跟以前一样。跟以前不一样。
春节。羊肉汤馆。老丁的儿子现在掌勺了。汤的味道稳定下来,咸淡适中。老丁坐在收银台后面,不拄拐杖了。腰还是不太好,但能站起来走几步。店里换了新菜单。红底白字,边角不再卷着。但价格没变。大份羊肉汤还是四十。陆行舟说涨价吧,老丁不同意。他说你们吃了这么多年,涨了价味道就不对了。除夕夜。店里的桌子拼成长条。坐满了人。陆行舟一家。沈若。老周和研发部的几个同事。王海东从临江县来,带着小雨。小雨长高了很多,门牙长齐了。她妈妈也来了,坐在王海东旁边。赵大有也来了,端着一杯饮料敬来敬去。马晓被舅舅推着来。轮椅还是那辆,粉色毯子还是那条。但她能站起来了——扶着舅舅的手,站了几秒钟。老丁的儿子端上红烧肉。不是羊肉汤馆的菜,是专门为我们做的。陆行舟站起来。“说两句。”店里安静了。老丁从收银台后面站起来,拄着拐杖走到桌边。他儿子扶着他。“今天除夕。这屋子的人,有跟我吃了二十年的,有吃了几年的,有头一回来的。”他看着王海东。王海东点了点头。“羊肉汤馆开了二十三年。我老了。以后是我儿子做。他做的汤,你们多担待。”老丁的儿子低下头。“但有一样东西不会变。”他拄着拐杖走到后厨门口,推开门。灶台擦得干干净净,铁锅挂在原来的位置,那把用了二十多年的汤勺还挂在锅边。“这口锅,熬了二十三年汤。不换。”他把门关上。“你们来,就有汤喝。”店里响起掌声。老丁摆摆手,拄着拐杖走回收银台。坐下时眼眶有点红。陆行舟端起杯子。“敬丁老板。”所有人举杯。“敬丁老板!”喝完他放下杯子,转过来看着我。“宋砚。你来说。”我站起来。羊肉汤的热气在灯下升起来。“三年前我在这家店里,给老陆看过一封邮件。期权取消的邮件。”店里安静了。“那时候我不知道,这碗汤还要喝多久。也不知道喝完以后,还能不能回到这里。”我看着桌上的人。王海东,小雨,她妈妈。马晓,她舅舅。老周,研发部的同事。沈若。“现在知道了。能。”我端起汤碗。“敬在座的每个人。你们让这碗汤,不用再分咸淡。”大家举杯。汤碗碰在一起。老丁的儿子从后厨端出新的一锅汤。热气腾腾。除夕的烟花在外面炸开。城中村的夜空被照得一亮一亮。河边的钓鱼人收竿了。今年最后一次。沈若坐在我旁边。她把碗里的枸杞夹出来吃了。“宋砚。”“嗯。”“新的一年了。”“嗯。”“有什么打算。”窗外的烟花又炸开。红色的,绿色的,金色的。照亮了整条巷子,照亮了羊肉汤馆的老招牌,照亮了河面。“把那盆绿萝养到开花。”沈若笑了。烟花在她眼镜上映出碎光。“绿萝不开花。”“那就养到它学会开花。”她把手放进我掌心里。“好。一起养。”烟花还在放。羊肉汤馆的灯暖黄的。老丁坐在收银台后面,拄着拐杖,看着满屋子的人。他儿子端着汤穿梭在桌子之间。锅里的汤咕嘟咕嘟冒着泡。一年过去了。新的一年来了。汤还是那锅汤。人还是那些人。咸的,淡的,都在一起了。
四年后。又一个春天。云帆安全芯已经成为行业基础设施。接入的企业超过两万家。那套操作溯源系统的日均处理量达到三百万次。每一秒,都有成百上千次“确认”被记录下来。每一次确认背后,都有一个人在某个深夜、某个凌晨,点下那个按钮。007号机房门口的2847号工牌还在。玻璃面上落了一点灰。沈若每次来数据中心都会擦一遍。铜牌上的字被擦得发亮。“绿萝已浇水”那行小字边缘有些氧化了,泛出淡淡的青色。马晓能走路了。不用轮椅,不用人扶。她扶着墙,扶着舅舅的手,扶着机房的机柜——一步一步,走到007号机房门口。她站在2847号工牌前面。“宋叔叔,我爸爸下个月回来。”她长高了。粉色毯子早就不盖了,但还叠好放在床头。她说等爸爸回来给他看。许昭远在监狱里当上了计算机课的助教。学员都是后来进去的人,罪名不同,刑期不同。他教他们操作安全芯系统。每次上课前,他会说同样一句话——“点确认之前,想清楚。这个确认,会永远被记住。”林知意的缝纫机找回来了。她母亲重新踩上那台蝴蝶牌。裁缝铺没有重开,但街坊邻居知道林婶子又做衣服了。谁家裤子长了,衣服破了,拿去,她不收钱。她说踩踩机器,手不生。林知意还在服装店当导购。下班以后回家,帮她母亲绕线。缝纫机的线轴转得飞快。她母亲踩踏板,她坐在旁边,把绕好的线轴递过去。母女俩很少说话。但线轴一直没断过。羊肉汤馆的老丁彻底退了。腰不行,坐不了太久。他儿子正式接班。汤的味道还是那个味。咸的,淡的,分装在两个碗里端上来。老丁偶尔来店里。拄着拐杖,坐在收银台后面。有人进门,他抬头看一眼。认出熟客,点一下头。然后闭上眼,听店里的人声,喝汤声,后厨锅盖响。他说这个声音,比拐杖好用。五月的傍晚。我和沈若在羊肉汤馆。老丁的儿子端来两碗汤。一碗咸,一碗淡。我把淡的推给她。她喝了一口放下。“宋砚。”“嗯。”“我今天在分所接待了一个人。”“谁。”“一个女孩。二十出头。在科技公司做研发。她说她的代码被主管偷了。主管拿去申请了专利,署的自己的名字。她问我,能告吗。”“你怎么说。”“我说能。但你要想清楚。告赢了,代码拿回来,但你在这家公司待不下去了。”她端起碗又放下。“她说,林律师,我不是要待下去。我是要让那个人知道,代码被偷的人,不是哑巴。”窗外河边的钓鱼人还在。竿梢弯了一下,又弹回来。“然后呢。”“然后我帮她写了诉状。立案了。”“她会赢吗。”“会。她的代码,MD5值,提交记录,Git日志,全部存着。她跟我说,她存了两年。”汤的热气升起来。“从被偷那天就开始存。”我端起那碗咸的汤,喝了一口。盐放得正好,不咸了。“沈若。”“嗯。”“你还记不记得,你问过我,这两年是怎么过来的。”“记得。”“我当时说,我不知道。其实我知道。”她看我。“是羊肉汤馆。每周五晚上,坐在这张桌子前。把汤喝完。然后等下一个周五。”老丁的儿子从后厨出来,端着新出锅的羊肉。他看见我们,远远点了下头。“等,不是因为相信会等来什么。是因为知道,有人在另一张椅子上坐着。”沈若把碗里最后一口汤喝了。枸杞留在碗底,她夹起来吃掉。“以后每个周五,那张椅子上都有人。”窗外的钓鱼人收竿了。今天竿梢弯过很多次。鱼线上有鱼,他摘下来,放进桶里。桶里水花翻动。天色暗下来。羊肉汤馆的灯亮起来。暖黄色的光,照着门上的老招牌。“走吧。”“嗯。”我站起来,把椅子推回桌下。桌上两碗汤都空了。咸的那碗我喝的。淡的那碗她喝的。都喝完了。门外,城中村的巷子还是那么窄。河还是那条河。钓鱼人的位置换了一个人,竿子不一样,姿势不一样。但鱼线还是抛进水里。有时有鱼。有时没有。
马宏盛出狱那天是周三。监狱门口,我停好车,没下去。沈若坐在副驾驶,手里拿着一个档案袋。“他的释放证明。还有社区矫正通知书。”“嗯。”“你不进去接?”“不进去。”“为什么。”“他女儿在门口等着。”监狱的铁门开了一道缝。马宏盛走出来。灰色夹克,拎着一个行李袋。头发白了一半,背比进去时驼了些。他站在门口,用手挡着阳光,往停车场这边看。马晓从轮椅上站起来。扶着舅舅的手,一步一步走过去。走到他面前时,腿软了一下。他扶住她。行李袋掉在地上。两个人就那么站着。他的手放在她肩膀上。她的手抓着他的袖子。粉色毯子叠好放在轮椅座位上。她没盖。我发动车。“走吧。”沈若把档案袋放在后座。“不去打招呼?”“今天不用。”车开上绕城高速。后视镜里,监狱的铁门越来越小。马宏盛和马晓还站在门口。他弯着腰,在给她擦眼泪。还是那个动作,跟以前给她掖毯子时一模一样。数据中心007号机房。马宏盛回来验收那天,陆行舟站在机房门口等他。马宏盛穿了件新polo衫。灰色,领口熨得笔挺。左手腕上戴着那块浪琴。表带第七节的划痕还在。他走进机房,空调凉意扑面。站了很久,然后蹲下来,把手放在地板上。“陆总。”“嗯。”“这底下,是我们当年创业的客厅吗?”陆行舟蹲下来,跟他并排。“是。数据中心的地基,用了盛恒那块地。盛恒那块地,拍下来的钱里,有你在客厅写的第一版BP。马宏盛,这栋楼,从客厅开始。”马宏盛的手在地板上放了很久。然后站起来,走到2847号工牌前面。玻璃面上的灰擦过了。铜牌上的字干干净净。“查到为止。”旁边那行“绿萝已浇水”泛着青色。他看了很久。“宋砚。”“嗯。”“我欠你的期权。还了。”“还了。”他转过身。“我欠陆总十五年。今天开始还。”陆行舟拍了一下他的肩膀,转过去,对着机柜。“007号机房的空调,你验收。”马宏盛走到空调出风口下面,伸手探了探。“凉。比我走之前凉多了。”他笑了。眼角褶子挤在一起。跟以前一样。
绿萝开花的那个春天。其实绿萝不会开花。植物学上,绿萝属于天南星科,不开花。或者极偶尔开,但花小得几乎看不见。我养的那盆绿萝也没开花。但它活过来了。从2847号工位搬到CTO办公室,又从CTO办公室搬回家。沈若给它换了盆。原来的塑料盆碎了,她挑了一个粗陶的,土褐色,盆壁上刻着一片叶子。换盆那天她蹲在阳台上。把旧盆剪开,根系露出来。白生生的,绕了一圈又一圈。“宋砚。”“嗯。”“你看它的根。盆太小了,根没地方长,就绕着圈。”她把根须小心分开,放进新盆里。新土填进去,按实,浇透水。水从盆底渗出来,在阳台地面上洇成一片。“以后不用绕圈了。”绿萝放在新盆里。叶子还是那几片,有一片边缘枯黄了,她没剪。“留着。那是它以前的事。”那盆绿萝在新盆里长了一年。新叶子抽出来,嫩绿色,比老叶子颜色浅。老叶子还在,枯黄的那片也还在。周五。羊肉汤馆。陆行舟带来了马宏盛。马宏盛现在管数据中心运维。工号还是007。他说等攒够钱,要把当年卖掉的那套房子买回来。不是买回那套,是买回那个客厅。陆行舟说好,买回来,第一间会议室还放你家客厅。王海东带来了小雨。小雨上初中了。书包上挂了一只毛绒兔子,拉链上还有一片干了的绿萝叶子。她说是从宋叔叔那盆绿萝上摘的。“宋叔叔,你家的绿萝开花了没有?”“没有。绿萝不开花。”“那为什么沈阿姨说,你们在等它开花?”沈若在旁边喝汤。碗端起来,遮住了半张脸。“因为等它开花,比等它不开花有意思。”小雨想了想。“不懂。”“不懂就对了。你宋叔叔也不懂。”老丁的儿子端来新菜。不是羊肉,是一碟凉拌黄瓜。他放下时手没稳,碟子晃了晃。“宋总,陆总。我爸让我学的新菜。你们尝尝。”陆行舟夹了一筷子。嚼了。“咸了。”老丁的儿子低下头。“但能改。”老丁的儿子抬起头。转身进了后厨。里面传来锅盖响,切菜声。然后他端出一碟新的。陆行舟尝了。“这次对。”后厨门口,老丁拄着拐杖站着。听完了,点了一下头。拐杖拄地,慢慢走回收银台。那天晚上,我和沈若散步回家。经过河边。钓鱼人的位置空着。竿子支在岸上,鱼线还垂在水里。人不知道去哪了。我们在岸边站了一会儿。“沈若。”“嗯。”“绿萝其实不开花。”“我知道。”“那你为什么说等它开花?”河面上的浮波动了一下。有鱼在试探,没咬钩。“因为等一件不会发生的事,比等一件会发生的事更需要耐心。你等了两年,等到了。现在你不需要等了。但总得有一件事,让你继续等下去。”浮波又动了一下。这次鱼咬钩了。竿梢弯下去。钓鱼人不在。我把竿子拿起来。鱼线绷得很紧。收线,鱼露出水面。不大,巴掌长。银白色的鳞在月光下闪了一下。我把钩摘了,鱼放回水里。它甩了一下尾巴,沉下去不见了。“以后不用等了。”我把竿子支回原处。“等它开花也好,不开花也好。它在那,我浇水。就够了。”沈若看着河面。鱼沉下去的地方,水波一圈圈散开。“那以后,我帮你浇水。”“好。”“你帮我喝咸的汤。”“好。”河边的灯亮着。钓鱼人回来了。他看见竿子动过,看了我们一眼。然后坐下,重新挂饵,抛竿。鱼线划破水面。浮波稳住。等着。
第五年的除夕。羊肉汤馆。店里的桌子又拼成长条。人比去年多了。马宏盛一家——马晓不用人扶了,自己走进来的。她妈妈也从南方回来了。坐在马宏盛旁边,两个人中间隔着马晓。小雨给她夹菜。她碗里堆成小山。王海东一家。小雨妈妈给他倒酒,他端着杯子,手有点抖。赵大有带来了他新带的徒弟。二十出头的小伙子,叫小周。王海东考他钢筋绑扎,他蹲在地上绑了一个,扎丝拧得紧。老孙带来了孙子。三岁,满地跑。跑到后厨门口,被老丁的拐杖拦住。老丁低头看他。他从兜里掏出一颗糖,放进小孩手心里。小孩攥着糖跑开了。陆行舟最后一个到。他抱着一块牌子,红绸盖着。放在羊肉汤馆门口。揭开来。铜牌,上面刻着:“云帆科技第一间会议室。原址:马宏盛家客厅。2009年。”他把铜牌钉在羊肉汤馆门边的墙上。老丁拄着拐杖在旁边看。“陆总,我这店,成你们公司会议室了?”“不是。是你们这店,一直是我们的会议室。”老丁没说话。拐杖拄地,慢慢走回收银台。坐下时,抬手擦了一下眼睛。除夕的烟花炸开。城中村的夜空亮成一片。沈若站起来。“我说两句。”店里安静了。“五年前,我在律所会议室第一次见宋砚。他给我看了一封邮件。期权取消的邮件。我当时问他,你攒了多久。他说两年。”她端起杯子。“今天我替他回答。不止两年。是从他父亲写那行批注开始。是从马宏盛家客厅亮起第一盏灯开始。是从陆行舟和他,在宿舍写出第一行代码开始。”她看着我。“宋砚。你等了五年。以后不用等了。”烟花在窗外炸开。她的脸在光里一亮一亮。“以后换我们等你。”所有人举杯。“敬宋砚!”我把杯子举起来。手不抖。喝完坐下。沈若把碗里的枸杞夹出来吃掉。“宋砚。”“嗯。”“新年快乐。”“新年快乐。”窗外烟花还在放。河面上映着碎光。羊肉汤馆的灯暖黄的。老丁坐在收银台后面,闭着眼。听店里的人声,喝汤声,后厨锅盖响。他儿子端着热汤穿梭在桌子之间。拐杖靠在椅子旁边。汤还是那锅汤。人比去年多了。咸的,淡的,都在一起。我把那碗咸的汤端起来。喝了一口。不咸了。沈若那碗淡的,她喝完了。碗底剩了一颗枸杞。她夹起来放进我碗里。“这颗给你。”枸杞在碗底。红得透亮。我夹起来吃了。窗外的烟花还在放。新的一年来了。
元宵节。羊肉汤馆门口挂了两盏红灯笼。老丁的儿子买的。老丁说浪费钱。儿子说,挂上好看。老丁就没再说什么。灯笼是纸扎的,里面点蜡烛。风吹过来,烛火晃,灯笼的影子在地上摇来摇去。陆行舟带来了公司的期权池方案。厚厚一沓,封面上印着“云帆科技员工股权激励计划(修订版)”。他翻开最后一页。“这次,所有人的名字都在上面。”名单从第一页排到最后一页。老周,李工,研发部两百多人。马宏盛的名字也在。王海东的名字也在。临江劳务的工人,以集体持股的方式写进去。陆行舟把方案放在桌上。“宋砚审过的。他加了一条。”马宏盛拿起来看。翻到附注页,第十七条。期权取消需经联合创始人双重确认。任何单方面取消操作,系统自动阻断,并向全体股东推送警报。“这条叫什么?”“‘宋砚条款’。”马宏盛笑了。笑着笑着眼眶红了。“当年我取消他期权的时候,不知道有一天会坐在这里,读这一条。”他把方案放下。“陆总。这一条,我认。”陆行舟端起汤碗。“不是认。是以后没人能再犯。”碗碰在一起。后厨锅盖响。老丁的儿子在学新菜,铁锅翻动,火苗窜起来。沈若从公文包里拿出一份文件。检察院的通知书。“许昭远的减刑裁定下来了。表现良好,减了八个月。”她把通知书推过来。“他在监狱计算机教室当助教。带的学员里,有六个出狱后找到了程序员的工作。其中一个来了云帆。面试时老周问他,你为什么选云帆。他说——因为安全芯的‘确认’按钮,他点了两年。”我拿起通知书。许昭远的名字在上面,旁边是减刑依据:确有悔改表现。协助监狱信息化建设。传授职业技能。后面盖着法院的红章。“他知道那个学员来了云帆吗?”“知道。学员写信告诉他的。他回信说——好好点‘确认’。”我把通知书放下。“减掉的八个月,他会怎么过。”沈若把通知书收回去。“监狱方面说,他申请了出狱后的职业技能培训。还是安全芯方向。高级课程。”窗外,河边的钓鱼人换了新竿。碳素的,比以前的竹竿轻。抛竿的动作还是那样。“沈若。”“嗯。”“等他出来,那套高级课程,云帆授权给他用。免费。”沈若看了我一眼。“为什么?”“因为他点了三年‘确认’。每次点,都知道自己在被录。这个知道,已经够了。”羊肉汤的热气升起来。沈若没再问。把通知书装回公文包。窗外灯笼晃。烛火在纸里亮着,风吹不灭。
又一年的五月。南河边的钓鱼人收竿了。天快黑了,他把鱼桶里的水倒回河里。今天钓了几条,都放了。他说鱼太小,等明年。羊肉汤馆的门开着。老丁的儿子在擦灶台。铁锅挂回原来的位置。汤勺也挂回去。老丁坐在收银台后面,没睡着。看着门口。我和沈若坐在老位子。两碗汤。一碗咸,一碗淡。咸的她推给我,淡的我推给她。跟以前一样。又不一样——她开始喝咸的了。我开始喝淡的。“什么时候换的?”“不记得了。”窗外的河开始暗下去。钓鱼人的背影消失在巷子尽头。城中村的灯一盏一盏亮起来。“沈若。”“嗯。”“你还记不记得,你第一次来这家店,说汤咸了。”“记得。你说那碗淡的是你的。”“对。”“现在呢?”“现在,分不清哪碗咸哪碗淡了。”她端起碗喝了一口。“我也是。”老丁的儿子从后厨出来,端着新菜。不是羊肉,是一碟凉拌黄瓜。放下时碟子稳了,没晃。“宋总,沈律师。我爸说,这道菜他教了我两年。今天算学会了。”后厨门口,老丁拄着拐杖站着。听完,点了一下头。转身走回收银台。坐下时,嘴角有一点弯。我把黄瓜夹进碗里。嚼了。盐放得正好,醋放得正好。“老丁的儿子,出师了。”沈若也夹了一筷子。“嗯。不用再尝咸淡了。”羊肉汤馆的灯暖黄的。照着我们,照着空椅子,照着后厨门口气氛,照着收银台上老丁的拐杖。门外的巷子暗了。灯笼还亮着。河还在流。我放下筷子。“走吧。”“嗯。”站起来。把椅子推回桌下。桌上两碗汤都空了。哪碗咸哪碗淡,分不清了。都喝完了。走到门口。老丁的拐杖拄地,一下,一下。他从收银台后面站起来,走到门边。“小宋。小沈。”我们回头。他把手伸进口袋,掏出两个红绳拴着的东西。两个U盘,黑色,指甲盖大小。一个刻着“宋”,一个刻着“沈”。“我儿子刻的。他说,你们送过他这个。他还你们。”老丁把U盘放在我手心里。他的手很糙,很暖。“里面是什么?”“他让我别说。你们回去看。”他拄着拐杖走回收银台。坐下。闭上眼。我和沈若走出羊肉汤馆。红灯笼在头顶晃。烛火透过纸,把光投在地上,一圈一圈。U盘插进电脑。里面只有一个文件。命名:配方。打开。第一行:羊肉汤做法。大份,咸口。第二行:羊肉汤做法。小份,淡口。第三行:凉拌黄瓜做法。第四行:老丁说的。汤咸了加水,淡了加盐。但最好是,做的时候就放对。文档最后一行:“宋总,沈律师。我爸说,你们以后不用分碗了。一锅汤,咸淡正好。谢谢你们,等了这么久。——丁晓。”关掉电脑。红灯笼还在晃。河边的钓鱼人已经走了。水面上的灯光碎成一片。“沈若。”“嗯。”“U盘里的配方,你收着。”“你呢?”“我收着这个。”我摊开手心。红绳。两个U盘拴在一起。她把红绳接过去,把两个U盘分开。一个系在自己手机上,一个系在我手机上。“一人一个。配方共享。”红绳垂下来。U盘晃来晃去。河风吹过来。灯笼的烛火晃了晃,没灭。
2030年。云帆科技成立十五周年。数据中心007号机房门口的2847号工牌还在。玻璃面换过一块,原来的被参观的人摸出了划痕。铜牌没换。“查到为止”四个字被摸得发亮,铜色变成了金色。“绿萝已浇水”那行小字已经氧化成深青色,几乎看不清了。马晓上了大学。计算机专业。她说毕业以后要来云帆。她爸在数据中心管运维,她来写代码。马宏盛说好。说的时候正在机房里换空调滤网。他把旧的拆下来,新的装上去,拍了拍手。“007号机房的空调,现在归我管。”许昭远出狱后开了一家计算机培训班。教室墙上贴着安全芯的认证证书。每期开班,他会对新学员说同一句话:“在这里学的每一行代码,都会被记住。”有人问他是谁说的。他说,一个点了三年“确认”的人。林知意的缝纫机还在踩。她母亲彻底退休了,坐在旁边帮忙绕线。线轴转得很快。她母亲说,这台机器比你年纪都大。林知意说,那就让它比我活得更久。羊肉汤馆的老丁走了。前年春天,睡着没醒。店门口挂了一年白灯笼。他儿子现在掌勺,也被人叫“丁老板”。老丁老板变成了老老丁。新丁老板的手艺完全继承下来了。汤的味道没变。店里换了新桌子,但老位子留着。墙角那张,桌面上刻满了字。有陆行舟刻的“咸”,有我刻的“淡”。刻痕被汤碗底磨得光滑了。绿萝开花了。不是真的开花。是沈若在盆里插了一朵纸花。白色的,五个花瓣,用打印机纸折的。她说是从安全芯的报废报告上撕下来的。花插在土里,跟真的一样。我问她为什么折这朵花。她说:“绿萝不开花。但有人等它开花,等了那么多年。不能让他白等。”纸花插在绿萝盆里。风从阳台吹进来,花瓣轻轻动。像真的。那盆绿萝还在长。新叶子抽出来,嫩绿色。老叶子还在,枯黄的那片也还在。沈若每周浇一次水。浇透。她说,这盆绿萝,从2847号工位搬来的。浇了这么多年,早就不是等它开花了。是等下一个周五。等羊肉汤馆的灯亮起来。等两碗汤端上来。咸的,淡的。分不清了。五年。十五年。二十三年。丁老板说的,汤咸了加水,淡了加盐。但最好是,做的时候就放对。现在放对了。
