下一章 上一章 目录 设置
64、第十九章 入侵者 第十九章入 ...
-
第十九章入侵者
邬昊搬走这天就是董超正式入侵413宿舍的第一天。
不是巧合——他是掐着日子来的。他从余寻那里打听到邬昊的搬家日期,然后提前三天开始往413搬东西。第一天搬了个枕头,第二天搬了条毯子,第三天搬了洗漱用品和换洗衣服。每搬一次,他就在邬昊那张空荡荡的床板上多摆一样东西,像是某种缓慢的、不可逆的领土标记仪式。
邬昊来拿最后一件行李的时候,看到自己的床已经被人占了。枕头端端正正放在床头,毯子叠得整整齐齐,枕边还放了一根棒棒糖——橙子味的。他沉默了片刻,转头看着正站在门口故作轻松的董超。
“你什么时候搬进来的?”
“刚才。”
“你哪来的钥匙?”
“没有钥匙。”
“那想不想有钥匙?”
“想。”
“那我为什么要把钥匙给你?”
“因为我有时候要过来拿漫画。”
“拿漫画需要枕头和毯子?”
“天冷了,拿完漫画可能需要休息一下。”
邬昊盯着他看。董超靠在门框上,嘴里叼着棒棒糖,双手插在口袋里,表情无辜得像一只把自己塞进猫窝里的金毛。邬昊放弃了追问。他已经和这个人相处了一个多月,深知董超的逻辑体系是一个封闭循环——你问他为什么不回自己宿舍睡,他说“这里离食堂近”;你问他自己的宿舍离食堂也就多走三分钟,他说“这里的食堂比那边的好吃”。同一个食堂,同一批师傅,同一口锅。但这套逻辑在董超嘴里能说得像法条一样理直气壮。
“行,”邬昊把最后一件行李塞进箱子里,“都留给你。但别动我桌上那张课程表。”
“不动。你的桌子我什么都不碰。”
“还有——别让余寻熬夜看漫画。”
“这个不用你交代。我每天晚上十一点关他床帘里的灯。”
邬昊顿了顿,把行李箱拉链拉上。走之前他在门口停了一下,回头看了眼那张已经被董超占领的床,又看了眼余寻紧闭的灰色床帘。嘴角动了一下,没说什么,走了。
李诚的车在楼下等他。黑色奔驰,擦得锃亮,后视镜上挂着的银色猫形挂件轻轻晃着。邬昊把行李箱放进后备箱,坐进副驾驶。李诚看了他一眼:“你刚才在楼上怎么待那么久?”
“有人占了我的床。”
“谁?”
“董超。他连枕头都摆好了。还放了一根棒棒糖。”
“橙子味?”
“你怎么知道?”
李诚发动车子,嘴角微微弯起一个弧度。“因为你第一次去我家的时候,也带了一瓶老干妈。”
邬昊没有说话。他把安全带系好,车窗摇下来一条缝。港市十二月的风吹进来,带着海水的咸味和远处工地扬尘的味道。他忽然觉得董超和李诚大概有一点像——不是性格像,是那种把自己放在对方生活里的方式。他的方式是留钱留名片,董超的方式是抢别人的床。本质上是同一种笨拙。
当天晚上,董超正式入住413。
他把自己宿舍的东西又搬了一部分过来——充电器、拖鞋、一个马克杯、一本翻到卷边的《法理学》,还有他姐给他塞的那堆特产零食。他把马克杯放在余寻的杯子旁边,隔了大概十厘米的距离。然后把拖鞋摆在余寻的拖鞋旁边,再近一点,只有五厘米。毯子叠好放在邬昊的床尾——不对,现在是他自己的床尾。他站在宿舍中央环顾了一圈,感到很满意。这里现在有四张床、两张桌子有人、一张桌子属于一个偶尔回来的交换生、还有一张桌子属于一个不知道什么时候才会回来住的Sun。这间宿舍的功能已经从“四人间”变成了“二人间”,而他是那个主动把自己从“访客模式”调成“常驻模式”的入侵者。
他走到余寻的床帘前。帘子拉得很严,深灰色,不透光,像一个垂直的保险箱。余寻在里面,大概在看漫画或者写代码。键盘声没停,但明显慢了——说明刚才他的动静全被听到了。
“余寻。”
“嗯。”
“我可以拉开一角吗?透透气。”
里面停了片刻。“——不是透气。是你要确认我在。”
就知道会这样。董超靠着床沿,低声笑了。“对。那能不能确认一下?”帘子从里面被拉开了一道缝。余寻的脸出现在缝隙里,眼镜片上有一块小小的蓝光倒影,大概刚从平板屏幕前移开目光。他看了董超一眼,没说话,然后把帘子拉回去。但没拉严。留了约三根手指宽的缝隙,刚好够看见里面一小片暖黄色的灯光。
董超站在帘子外面,透过那道缝隙。他能看见余寻的枕头边摞着《咒术回战》的新一卷,旁边放着MP4和充电宝。
通风口的暖风呼呼吹着,他把毯子铺好躺下来。宿舍安静了,只有键盘偶尔响起轻微的回车声。他知道余寻的小天地不需要真正透气——因为从很久以前起,那里面唯一的额外访客权限就一直挂在后台,备注栏里只有两个字。
“是我。”
--------------呜哇,那条并不存在的分割线------------
余寻给自己床帘留了一道缝。
这个行为在他的系统里属于重大更新——以前他拉床帘从来都是拉到底的,密不透风,防火墙开满,所有外部请求一律403 Forbidden。现在他留了一道大概三指宽的缝。不是为了透气,是因为帘子外面有一个人,他会定时从法学院跑过来,坐在邬昊的床上,拖鞋摆在余寻的拖鞋旁边,马克杯放在余寻的杯子旁边。然后他会在那个固定位置说一句“余寻你在吗”。余寻觉得这个人可能是把他的床帘当成了某种打卡器——每天必须确认帘子里有人在,他才能安心去复习他的《法理学》。
他以前没有“被打卡”这个需求。但这个月来,被董超每天确认两次之后,他的系统好像自动生成了一个对应进程。每天中午一次,晚上一次。如果有一天董超没来,他会开始看手机——不是焦虑,是那种后台运行的、低功耗的等待模式。手机屏幕一亮,他就扫一眼。不是董超发的消息就放下。他在备忘录里给自己找了个理由:“目的:确认是否晚归;优先级:中等;持续时间:至对方回复‘在路上’或‘今晚不回来’为止。若对方无此习惯(他才搬过来一周多目前仍在建立日志),则仅记录不干预。”分析完了,他把手机放回枕头边,继续看书。这天晚上,门锁没响,他就提前保存好了代码和漫画的观看进度。
一个小时后,门口传来钥匙转动的声音。不是邬昊——邬昊开门的声音更轻更慢,像是在做贼。这个开门的节奏更急更快,钥匙一转门就推开了,然后是一句压低了但压不住的声音:“外面冷死了。”是董超。
余寻的帘子被拉开了一小片。董超的脸出现在缝隙里,鼻尖是红的,头发被风吹得乱七八糟,但眼睛很亮。“你还没睡?不是说好十一点关平板的吗。”他嘴上说着,视线已经往枕头边扫了一圈——平板还在,屏幕暗着,充电线插好了。余寻没回答,只是伸出手,从帘子里递出去一杯热可可。邬昊搬家前留下的那罐可可粉,用马克杯泡的,热气正从杯口往上冒。他自己那杯早就泡好了,一直在等。现在刚好趁热递出去,泡的时间刚好。
董超接过去,双手捧着那个马克杯。“你给我泡的?”
“你说外面冷。可可粉是邬昊留的。我查了保质期,没过期。”
“你什么时候学的泡可可?”
“不用学。按包装上的说明。可可粉两勺,热水冲。温度评估:六十五摄氏度。适合暖手。”
董超捧着杯子,从帘子缝隙里往里看。余寻坐在被子里,平板放在膝盖上膝盖蜷着。旁边的小黄灯照着他的侧脸,被子上摊着一本刚翻开的漫画。
他端着可可坐回自己床边,盘着腿,面对着余寻的床帘。帘子的缝从三根手指宽变成了四根,他能看到被子动了动,往里面挪了大概十厘米。十厘米,刚好够一个人坐下的空间。他把可可端起来喝了一口,和以前一样甜,和以前一样量了两勺。
第二天晚上。董超比前一天早了一点到,手里拎着老马记的宵夜。塑料袋冒着白气,芝麻油的香味从袋口钻出来,被走廊的过堂风吹得满宿舍都是。余寻从帘子里探出头——他今晚批改代码改得有些投入,确实饿了,但见到董超提了馄饨,又把想说的“其实我正准备去食堂”咽掉了。
“你这样会被马叔记住的。”
“他已经记住了。每次我去买馄饨他都会多给一勺紫菜。他大概以为是我一个人吃。”
“你不是一个人吃。你是每次都分我半碗。”
“那是你每次都只点一碗然后又饿了。”
余寻端着碗,靠在床栏上,想起以前的每个周五晚上,他都是一个人去食堂、一个人等夜宵、一个人吃完。现在他的床帘外面多了一张永远在嘴硬的人。这个人每周五晚上会跑两条街去买馄饨,回来的时候塑料袋在他手里晃来晃去,芝麻油香洒了一路。他把床帘拉开半边,把馄饨又拨回去半碗。董超没推辞,大口吃完,然后从抽屉里抽出一本摊开了好几天的《法理学》和一支笔,开始在余寻书桌旁边的空桌上复习。余寻的台灯照过来刚好能分到那边,他看一段法条就抬头看一眼前面那颗安静的后脑勺。
晚上十一点,余寻准时关掉平板。但董超正在背一条明天可能要考的概念,压低声音说马上马上。余寻伸手把床帘多拉开了一些,让灯光铺得更宽。他盘腿坐在床沿,看着他背书的侧脸。走廊里有人跑过去,拖鞋拍打地面。远处电梯叮咚一声,但宿舍里只有他和他,外加一束投到很晚才收起的灯光。
余寻在备忘录里加了一行字:“程序扩展:外部进程‘夜间共学模块’已接入。需增加每周备茶量与帘子拉开时长。属轻微超限,但允许。”他把备忘录关掉,轻轻靠回床边。台灯是暖黄色,茶冒着淡淡水汽。他们俩现在都没有说话,但他觉得这里比任何时候都不再需要翻译。
几天后,邬昊来宿舍取一件忘记带走的快递。推开门,看到两双拖鞋并排——余寻的是深灰色的,董超的是黑色的,鞋型一窄一宽,鞋头朝外整整齐齐挨在一起。他顿了顿,然后走到自己桌前找快递。
帘子里传来董超的声音:“谁?”
“邬昊。”
“快递在你桌上。我没动。”
邬昊拿了快递,没有马上走。他靠在桌边,看着那条没拉严的床帘缝隙,又看着自己曾经的床上叠得整整齐齐的毯子和床头那根还没吃的橙子味棒棒糖。
“你打算住多久?”
“住到他不让我住。”
“他要是不说呢?”
“那就继续住。”
邬昊难得笑了一声。他往外走,经过门口又停下来。“你那个杯子越挪越近了。上次隔了五厘米,今天只有三厘米。”
“你量的?”
“不用量。从我这个角度刚好能看到。他上次就在看你的杯子——他是不是把你的杯子往左边挪了一点,你自己都没发现。不信你现在去看。”
门关上了。董超从帘子上收回视线,低头看着桌上排在一起的两个马克杯。中间的距离确实比他昨天摆的窄了。他昨晚复习完直接睡的,没碰过杯子。他靠在椅背上,剥了一根棒棒糖塞进嘴里。这次是可乐味的。
--------------嗯,就是那条并不存在的分割线------------
Devin从深圳回来的那天,是被人从机场一路送到宿舍楼下的。他兴奋得像一只刚从长途托运箱里放出来的大狗,背着那个塞满田野调查笔记的登山包,踩着节奏感极强的小跳步冲上四楼。他在走廊里就忍不住喊——“我回来了!我的成语进步了!”
推开门。然后愣住了。
他记忆中那个干净利落、每天被他用“守株待兔”当早安问候的灰色床帘还在,但自己对面那张属于Sun的空床上此刻正盘腿坐着一个男生,嘴里叼着根棒棒糖,膝上摊着一本翻开的漫画。这人抬起头,非常自然地朝他打了个招呼:“你是Devin吧。我是董超。你桌上那份烧卖是我顺路带给你的,还热。”
Devin的下巴动了一下,中文输出模块瞬间过载。他把登山包放在地上,看看董超,看看那盒盖子上已经凝了一层水珠的烧卖,又看看正从床帘里探出头的余寻。“十几天前——成语——‘鸠占鹊巢’——是不是这个?鹊巢!这里以前是Sun和邬昊的巢——你现在是鸠!”
董超眨了眨眼。“我付了租金的。烧卖。”
Devin的嘴唇翕动了几下,他正在以极强的意志力检索一个足以概括此刻复杂社科学术观察的成语。然后他放弃了,坐下来拿起筷子,对着烧卖认真地叹了口气:“你们中国人的宿舍关系——比亲属称谓还难懂。”当天晚上他在日记里用人类学田野笔记的格式写道——“归岛首日。目标宿舍(港大413室)发生显著空间重组:原属于成员邬某的床位已被一名自称‘隔壁宿舍’的法学系男生置换为长期驻扎点。该男生自带马克杯、拖鞋、棒棒糖供应链,并展示出对帘内人员作息(晚十一点熄屏、周五夜宵窗口偏好)的精细掌握。置换过程无冲突,原成员邬某反应平静(推测已签署某种口头协议)。帘内人员在观察期内的开口次数明显增加(注:仍以单字为主,但语音识别成功率和频次均上升)。该空间结构的上一个可比案例来自《文化人类学》第十九章‘寄居家庭的非正式成员’。但本次观察中双方似乎都不把对方视为‘寄居’。”(当然以上记录用的是英语,毕竟他的中文还不太好。)
另一个目睹者温和只是在走廊里经过。那扇门平时总是关着,今晚Devin忘记带上,露出一条一掌宽的缝。他走过去的时候看到一杯可可和一盏灯,还有个人正把椅子拖近床帘。他没有停下,脚步照常,但回宿舍以后也多看了手机一眼。
--------------反是那条并不存在的分割线—------------
周五晚上,董超和余寻刚从食堂吃完夜宵回来。宿舍里只有他们两个人——Devin在走廊里和对门交换生用成语激烈辩论,Sun依旧不知所踪。董超坐在自己征用的床上,手里翻着《法理学》,翻得很快,因为他根本看不进去。他正在做一件他以前觉得这辈子都不会做的事:给余寻发消息。不是从学校这头发到那头,是面对面,隔着不到两米的距离。他在输入框里打一行字:“我在想我要不要干脆不走了”,看着那行绿色的气泡悬在对话框里,然后删掉,再过一分钟又重新打出来。
然后他听到余寻的声音,从帘子里传来。“你在打字。打了一晚上。有什么事可以直接说。”
董超从手机前面抬起头。帘子还是拉着的,但是缝开着,比每天下午看到的更宽了一点。他把手机放在床上,深吸一口气。
“余寻。我想以后每周多住两天。不是周五周六。是周三、周四、周日也过来。这样一周差不多都在这里。”
帘子里沉默了很久。久到走廊里Devin的笑声都变了一个调,从“哈哈哈”变成了“哈——哈——哈”。然后他开口,声音很平稳。“你这是在申请正式入住。”
“是。”
“你的宿舍呢。”
“那边有三个室友。他们不需要我。”这句话说出口,他自己也觉得逻辑不对——室友不需要他,还是他不需要室友?但余寻没有追究这个漏洞。帘子忽然从里面拉开了。
余寻盘腿坐在床上,平板放在膝盖上,台灯的暖光把他半边脸照得很亮。他看着董超。那双眼睛在镜片后面,没有躲,没有眨,像在进行某种极其精确的数据比对。然后他说:“可以。但要遵守规则。十一点熄平板,你的一样。周五夜宵轮流买。马克杯右移三厘米会挡住台灯,建议左移。这里的衣柜你可以下一层那个空着的。拖鞋不用再收进床底下了。”
董超坐在那里,手里还握着手机。手机屏幕亮了——他刚才打的那行字还挂在输入框里,已经不需要发了。他走过去,先把拖鞋留在床脚边,再把马克杯从余寻杯子旁边拿起,往左边量了两厘米,轻轻搁在台灯光圈的边沿。然后他站在帘子前面,看着这个终于被他正式进入的小天地——枕头边码放着漫画,墙上贴着课程安排和一张他画的火柴人。他伸出手,没有拉开帘子。帘子已经开了。他只是在帘布边缘轻轻碰了一下,然后放下。
“好。”他说。
当天凌晨,董超忽然醒过来,摸出手机发了一条消息给姐姐——“姐,我有新宿舍了。和余寻一间。正式的。”早上七点姐姐回复了——“你枕头边是不是还放了棒棒糖。橙子味。”董超笑着把旁边那张床上的毯子裹得更紧了点,回了一条——“嗯。他也给我买了。”
--------------啊,那条并不存在的分割线—------------
距离邬昊彻底搬走第三周。Sun偶尔回来取衣服,Devin正在为一场国际线上的辩论赛疯狂查成语词典,宿舍仍然维持着实质上二人间的平稳运作。
这天下午,董超发现余寻床帘上挂了一只小布挂件。不是什么很显眼的东西——用深蓝色线缝的,歪歪扭扭的一个小圆球,顶上扎着一根红色的线,看起来像是某种人工培育失败的毛绒水果。他忍不住问:“这是什么?”
“……太阳。”
“你自己缝的?”
“嗯。”
“什么时候学的?”
“针线活不需要学。穿针,打结,缝合。和代码逻辑一样。输入,处理,输出。材料是你不穿的袜子拆的。”
董超把那个“太阳”托在手心里。深蓝色线在光下一跳一跳,歪歪扭扭,看不出是袜子变的。针织线结了好几个疙瘩,针脚不太均匀,但那个圆球被填得很饱满,拍一拍还会轻轻弹回来。“为什么忽然缝这个。”
“不是忽然。上周你在图书馆睡着了。我画笔记本时顺手做了一个。今天把挂绳改短了——你太高了,上一次挂绳太长容易打到灯。”
董超把小圆球放回他手心里,帮他把挂绳又调松了一点。
这一天余寻在自己的备忘录——那个已经由“异常行为记录”改成“日常运维”的文件夹里,写下了三行很短的字:“今日房间室内温度正常。增加了标志物。他的拖鞋从今天起不用再收到床底。帘子开启宽度由窄调为常开。更宽的空间暂不需要。”他顿了顿,又在后面加了一句很小的附注:“因为已经都在里面了。”
【本章彩蛋 ·余寻的内心四格漫画】
《入侵检测报告 ·防火墙规则更新》
**第一格:**
标题:非法入侵·初次警告
画面:宿舍俯视图。邬昊的床(虚线框)上多了一团画着虎牙和棒棒糖的简笔小人。旁边的系统日志正在滚动——“Day1:检测到外部单元入驻。对象编号:DC-01。携带物资:枕头×1,毯子×1,橙子味棒棒糖×1。占用床位:原邬昊单元。行为分析:非随机停留,属预谋入驻。”床帘里的火柴人余寻探出头,表情认真地在写备忘录,对话框写着:“入侵类型:缓慢渗透式。第一天:枕头。第二天:毯子。第三天:洗漱用品+换洗衣服。战术特征:每次只增加一样物品,规避一次性大规模变更检测。备注:已注意到。暂不驱逐。”
**第二格:**
标题:每日check·帘子缝隙的演化
画面:四格连环图。
第一小格:帘子拉开一道缝,Q版董超的脸贴着缝隙往里看——“你在吗?”
第二小格:一杯热可可从缝里递出来。
第三小格:帘子缝变宽了,可以看见里面暖黄色的灯光和余寻枕头边正在播放的动画片。
第四小格:余寻在面板上划了一条趋势线。趋势线从窄到宽,末尾标着:“缝隙宽度与可可消耗量呈正相关。今晚份额已到。他还需要在这里坐一会儿。先别关。”
**第三格:**
标题:Devin的田野笔记
画面:Devin坐在自己床上,手里举着一本《成语大全》,头顶还在转圈冒烟。他正在笔记本上奋笔疾书,纸张上的字挤成一团——“413室空间重组观察:邬某→出走(与西装革履男同居),Sun某→偶尔闪现取衣物,外来变量董某→实质性固定驻扎。董某已掌握内部作息密钥(晚十一点熄屏、周五夜宵偏好),帘内人员接受度异常高。该现象或可归入《入侵生态学》第二章第三节:‘长期共栖中的非对称容忍’。等等,‘鸠占鹊巢’这个词用了吗?上次刚背过。不管了先吃烧卖。”烧卖盒子上被他画了一个笑嘻嘻的Q版董超和自己,旁边的余寻从帘子里探出头,对话框飘着:“这家伙的中文又退步了。”
**第四格:**
标题:余寻的结论
画面:火柴人余寻坐在已经全程拉开的床帘里,面前是横开的备忘录界面。两个气泡从屏幕里跳出来——
大气泡(字体端正,加粗):「入侵监测已更新。对象DC-01的物理坐标已从‘外部访客’迁移至‘内部常驻’。关键改动项:拖鞋摆放规则取消(不需收进床底),马克杯间距由初始10cm动态调整至2cm(对方无需再手动复位),床帘缝隙宽度调整为常开模式。系统提示:防火墙规则已更新。对象DC-01从‘需验证的外部请求’移至‘白名单·内部单元’。」
小气泡(极淡极细,像那只歪歪扭扭的毛绒太阳散开的线头):「这条规则其实是开学的第一天就写好的。他只是现在才到期。」