事情是從一瓶氣泡水開始崩盤的。
R 公司的慶功宴設在大樓頂層的露天花園。
這是老 K 的主意。Falchion 鍵盤的預售數據在昨天衝破了一個連財務部都不敢相信的數字,老 K 在辦公室裡盯著報表看了整整五分鐘,然後一拍桌子,大手一揮:「慶功宴!今晚!全公司!吃喝全報!」
財務總監弱弱地問了一句預算上限。
老 K 說:「沒上限。」
財務總監的臉當場綠了。
露天花園被臨時佈置成了一個半正式的酒會場地。串燈從護欄的這一頭拉到另一頭,投下一片暖黃色的光暈。長條桌上擺著自助餐點和各種酒水,從威士忌到清酒到氣泡水應有盡有。DJ 台上放著一首節奏慵懶的 lo-fi hip hop,音量控制在「能聽見但不需要喊」的分貝範圍內。
公司裡大大小小的人都來了。工程師們換下了白襯衫,穿上了各種格紋襯衫和素色 T 恤,看起來像是從一個辦公室直接搬到了另一個辦公室,只是衣服顏色變了。公關部的女生們精心打扮了一番,踩著高跟鞋在人群中穿梭,手裡的酒杯在串燈下閃閃發光。
老 K 本人佔據了花園角落的一張單人沙發,面前的茶几上堆了三盤炸雞(不是起家雞,是慶功宴的正式餐點炸雞,但老 K 嘗了一口之後嫌棄地皺了皺眉,覺得不如起家雞好吃)、一盤薯條、以及一瓶已經開了蓋的 Macallan 12 年。他的眼睛在人群中掃來掃去,像一台監控攝影機在追蹤兩個特定的目標。
目標一:夏雪。
目標二:陳寧。
此刻,夏雪正站在長條桌旁邊,手裡端著一杯不知道誰遞給她的清酒。她今天穿了一件難得不是黑色的衣服,深藏藍的絲質襯衫,袖口捲到了手肘以下,露出一截纖細的手腕。頭髮沒有像平時一樣隨意地披著,而是紮了一個低馬尾,幾縷碎髮垂在耳邊。
她看起來比平時柔軟了一些。
只是一些。
陳寧不在場。
老 K 掃了一圈,沒有找到他。然後他想起來了:陳寧今晚請了假。理由是「要回實驗室校準一批新到的微動開關樣品」。
老 K 覺得這個理由比他的炸雞還假。
但他沒有戳穿。有些木頭,你越逼他,他越往更深的洞裡鑽。
問題出在第二杯清酒上。
夏雪不是一個愛喝酒的人。她的酒量大概在兩杯紅酒到三杯啤酒之間,超過這個量,她的大腦就會開始出現「放鬆警戒」的症狀。具體表現為:防備心下降,語言過濾器關閉,以及一種讓她事後會後悔三天的衝動感。
第一杯清酒是 Captain 倒的。Captain 說:「今天是好日子,喝一杯。」夏雪喝了。
第二杯清酒是老 K 倒的。老 K 說:「預售翻了三倍,這也有妳的一份功勞,再喝一杯。」夏雪喝了。
第三杯——
第三杯還沒來。
因為在第二杯的酒精開始發揮作用的時候,夏雪看到了一個人。
那個人不是從花園的大門走進來的。是從通往實驗室樓層的消防樓梯門走出來的。
陳寧。
他顯然是從實驗室過來的。白襯衫的袖口還捲著,露出一截瘦削的手臂。黑框眼鏡沒有換。但他的瀏海比白天亂了一點,大概是在實驗室裡撓頭撓的。
他手裡拿著一瓶氣泡水。
是那種便利商店賣的最普通的氣泡水,透明的瓶子,透明的液體,零糖零卡零味道。跟周圍的威士忌、清酒、紅酒比起來,它樸素得像一個走錯了派對的路人。
陳寧顯然不打算久留。他的身體語言寫得很清楚:走過來,拿點東西吃,待十分鐘,然後回實驗室。他的目光掃了一遍全場,找到了長條桌上的三明治區域,腳步開始往那個方向移動。
然後他的路線被擋住了。
夏雪站在他的面前。
手裡端著半杯清酒。
她的臉微微泛紅,不是害羞的紅,是酒精擴張毛細血管的紅。但她的眼睛非常清醒。清醒到陳寧在看到那雙眼睛的第一秒鐘就知道:她沒有醉。
至少沒有完全醉。
「陳設計師。」夏雪的聲音比白天輕了一點,帶了一層微微的沙啞,像一把被砂紙打磨過的手術刀,銳利還在,但邊緣變柔了。
「妳好。」陳寧的回答比她更簡短。
「你怎麼才來?」
「在實驗室加班。」
「今天是慶功宴。」
「我知道。我過來拿點吃的。」
「就拿吃的?不喝一杯?」
「我不喝酒。」
夏雪低頭看了一眼他手裡的氣泡水。
「氣泡水。」她的嘴角微微挑了一下,那個弧度介於嘲諷和好笑之間,「整個公司的人都在喝威士忌和清酒,你拿了一瓶氣泡水。」
「我喜歡氣泡水。」
「你喜歡氣泡水。」夏雪重複了一遍他的話,語氣像是在品味一瓶酒的餘韻,「你知道嗎,陳設計師,你是我見過的最無趣的成年男性。」
「謝謝。」
「這不是誇你。」
「我知道。」
夏雪盯著他看了兩秒鐘。然後她做了一個讓陳寧全身汗毛豎起來的動作:她把清酒杯放在了旁邊的桌沿上,然後往前走了一步。
一步。
距離從一米五縮短到了半米。
陳寧下意識地往後退了半步。
他的背碰到了牆。
不是花園的外牆,是通往洗手間的走廊入口旁邊的一根裝飾性立柱。立柱的表面是仿大理石紋路的石膏板,冰涼的,硬的,沒有任何退路。
夏雪又往前走了一步。
距離從半米縮短到了三十公分。
近到陳寧可以看清她睫毛的弧度、鼻樑上那一顆極其細微的雀斑、以及她唇角因為剛才喝酒而微微暈開的唇膏邊緣。
近到他能聞到她身上的味道。
不是香水。夏雪不噴香水。是一種很淡的、混合了沐浴乳的柑橘調和剛剛那杯清酒的米香的、屬於她自己的味道。
陳寧的呼吸停了半秒。
然後他強迫自己恢復了正常的呼吸頻率。一次吸氣,兩秒。一次呼氣,兩秒。心率不能超過九十。超過九十,他的面癱面具就會開始出現裂紋。
「我問你一個問題。」夏雪的聲音很輕。輕到周圍三米內的人都聽不見。DJ 的音樂和人群的嘈雜聲在他們之間形成了一道天然的隔音屏障。
「什麼問題?」
「你那天在測試室裡,用 Harpe 做的那個 Z 字型微操。」
陳寧的脊椎僵了一下。
他的大腦立刻進入了警戒模式。橙色警戒。不是紅色(紅色代表「她已經確認了我的身份」),但也不是黃色(黃色代表「她只是好奇」)。橙色代表「她在主動出擊,而且她喝了酒,語言過濾器已經關閉了」。
「我已經解釋過了。」他說,「那是標準的 QC 測試流程。」
「你解釋過了。」夏雪點了點頭,「但你解釋得不好。」
「……哪裡不好?」
「哪裡都不好。」夏雪微微歪了一下頭,瀏海從她的額角滑落了一縷,她沒有去撥。她的目光穩穩地鎖在陳寧的臉上,像一把已經完成了校準的狙擊鏡。
「你的 Z 字型微操,」她說,「跟我在四年前的一段比賽錄像裡看到的一模一樣。那段錄像是《絕地武力》關服前的最後一場比賽。九哥的鏡頭視角。他的滑鼠軌跡在慢速回放下,就是你那天做的那個 Z 字。三段式銜接。銳角轉折。第一段從左下到右上,第二段急轉向左下,第三段在終點處做微調。」
她頓了一下。
「你的微調有過沖。大約零點三毫米。」
陳寧的瞳孔收縮了。
「九哥的微調也有過沖。也是大約零點三毫米。」
空氣凍住了。
不是比喻。陳寧覺得自己周圍的空氣分子在這一刻全部停止了布朗運動。
「你知道這意味著什麼嗎?」夏雪的聲音又輕了一點。輕到陳寧需要集中全部的聽覺注意力才能聽清每一個字。「這意味著,你做的那個 Z 字型微操,不是什麼『標準 QC 測試流程』。標準測試流程做出來的軌跡,每一個人做都應該是一樣的。但你做出來的軌跡帶有你個人的生理特徵。你手腕的旋轉極限角度、你肌腱的發力模式、你的微調過沖幅度——這些都是你身體的簽名。」
她的目光在陳寧的臉上掃了一遍。
「而九哥的身體簽名,和你的一模一樣。」
陳寧的大腦在這一刻經歷了一場他稱之為「全系統紅色警報」的事件。
他的防線被突破了。不是全部,但已經被突破了一道關鍵的口子。夏雪不是在猜。她是在用數據說話。比賽錄像裡的滑鼠軌跡、慢速回放下的三段式銜接、以及那個只有他自己才知道的零點三毫米過沖——這些不是巧合能解釋的。
她已經拼出了拼圖的大部分。
剩下的只是一塊。
一塊上面寫著他的名字的、正面朝下的最後一塊。
他需要做一個決定。
現在翻牌,還是繼續藏?
他的大腦在零點五秒內完成了評估:
翻牌的風險:他還沒準備好面對「為什麼消失四年」這個問題。那個問題的答案牽涉到太多他不願意讓她知道的東西。Eva 的物理封鎖、他對自己「不配」的認定、以及他覺得自己必須先做出一把完美的鍵盤才有資格站在她面前的偏執——這些東西一旦攤開,他不知道夏雪會怎麼反應。
繼續藏的風險:夏雪已經掌握了足夠多的證據。繼續否認只會讓她覺得他在耍她。而夏雪最不能容忍的事情就是被人當傻子。
兩個選項都是懸崖。
他選了第三條路。
沉默。
不是「我不回答」的沉默。是「我聽到了妳說的每一個字,但我需要時間來消化」的沉默。
但夏雪不給他時間。
她突然笑了。
那個笑容在串燈的暖黃光線下顯得有點不真實。夏雪平時幾乎不笑。至少在人前不笑。她笑起來的樣子和她不笑的樣子之間的落差,大概相當於一座冰山突然裂開了一道縫隙,裡面露出來的不是岩漿,是一種讓人猝不及防的、明亮的、像夏天下午三點鐘的陽光一樣的溫度。
但那個笑容只持續了一秒鐘。
然後消失了。
取而代之的是一種更複雜的表情。介於嘲諷和脆弱之間。像一個已經看穿了對手底牌但還沒決定要不要掀桌的撲克玩家。
「你知道嗎,陳設計師。」
她的聲音降低了半度。
「你跟我那個失蹤了四年的死鬼前任,」她一字一頓,每一個字都像一顆被精確投放的深水炸彈,「走位像,手速像,Z 字型微操像,就連那個零點三毫米的過沖都一模一樣。」
陳寧的喉結動了一下。
「你說,」夏雪往前又湊了半步。距離從三十公分縮短到了二十公分。近到她的呼吸輕輕拂過了陳寧的下巴。他的身高比她高出將近十五公分,她需要微微仰頭才能看到他的眼睛。但此刻她的眼神沒有仰視的弱勢感。那是一雙在戰場上磨了七年的眼睛。
「世界上真的有這麼多巧合嗎?」
陳寧沒有回答。
他的手在褲兜裡攥成了拳頭。指甲掐進掌心。他需要這個疼痛來維持理智。
夏雪盯著他看了五秒鐘。
五秒鐘裡,她看到了什麼?
她看到了他的瞳孔在收縮。看到了他的喉結在滾動。看到了他的耳尖開始泛紅(又是那五毫米的紅色)。看到了他的下巴線條繃緊了一瞬又鬆開。
她還看到了一個更隱蔽的東西。
他拿著氣泡水瓶的那隻右手,拇指在瓶蓋上輕輕摩挲了一下。
那個摩挲的動作不是焦慮。不是緊張。
是一種安撫性的、自我調節的、試圖用一個微小的重複性動作來穩定情緒的肌肉運動。
夏雪見過這個動作。
四年前,在《絕地武力》的某場排位賽裡,殘局進入了一打五的絕境。九哥在語音頻道裡一句話都沒說。但夏雪坐在他旁邊(那時候是線下聚會),清楚地看到了他的右手拇指在滑鼠的滾輪上輕輕摩挲了一下。
然後他做了一個 Z 字型甩槍。四個人頭。
摩挲一下。Z 字。擊殺。
摩挲一下。Z 字。擊殺。
那個節奏,她記了四年。
此刻,同樣的摩挲動作出現在了陳寧的手上。
夏雪覺得拼圖的最後一塊已經翻到了正面。只是上面的圖案她還需要最後一點時間來看清。
但她今天不想再逼了。
酒精讓她的攻擊性下降了,同時讓她的另一種本能上升了。那種本能叫做「直覺」。直覺告訴她:如果她今天把最後一塊拼圖硬按下去,拼圖會碎。
有些人不是被逼到牆角才會說真話的。
有些人是在你退後一步、給他留出一點呼吸空間的時候,才會自己走過來。
夏雪退後了一步。
距離從二十公分回到了半米。
陳寧的呼吸在她退後的那一瞬間明顯深了一度。他大概已經屏氣了至少十秒鐘。
「算了。」夏雪的語氣突然輕了。像一陣風在轉向。不是溫柔的風,是那種暴風雨前最後一絲平靜的風。 「今天是慶功宴。不談工作。」
她轉過身,走回了長條桌旁邊,拿起了她剛才放下的那杯清酒。
但她沒有走遠。
她靠在桌沿上,距離陳寧大概兩米遠。手裡端著酒杯,眼睛看著花園外面的夜景。淡水河口的渡輪燈光在水面上拖出一條金色的光帶。風把她的碎髮吹起來了一點。
陳寧站在原地,沒有動。
他的手還在褲兜裡。拳頭還攥著。指甲在掌心裡留下了四個半月形的印痕。
然後夏雪又開口了。
這一次,她的聲音比剛才更輕。
輕到像是在自言自語。
「你知道嗎。」她說,眼睛看著河面上的燈光,沒有看他。「我那個死鬼前任,他最喜歡喝的也是氣泡水。」
陳寧的拳頭在褲兜裡攥得更緊了。
「每次打完比賽,所有人都去喝啤酒慶祝。只有他,一個人坐在角落裡,握著一瓶便利店買的氣泡水。我問他為什麼不喝啤酒。他說啤酒有味道,氣泡水沒有味道。他不喜歡嘴巴裡殘留味道。」
她頓了一下。
「因為他打完比賽之後要繼續回去寫代碼。他說嘴巴裡如果有味道,會影響他寫代碼的專注力。」
陳寧的呼吸在這句話的最後一個字上停了半秒。
「你也是這樣嗎?」夏雪的目光從河面上收回來,落在了他的氣泡水瓶上。「你也是打完仗要回去寫代碼的人?」
陳寧低頭看了一眼自己手裡的氣泡水。
透明的瓶子。透明的液體。零糖零卡零味道。
他買這瓶氣泡水的時候沒有想太多。只是因為便利商店裡只有這個和啤酒,他不喝啤酒。
但現在——
「我不寫代碼。」他說。聲音很平。幾乎很平。「我是硬體設計師。」
夏雪盯著他看了三秒鐘。
然後她笑了。
那個笑容比剛才短。只有零點五秒。
但比剛才更真實。
「行。」她說,「你是硬體設計師。」
她把清酒杯裡最後一口酒喝完,把空杯放在桌上。
然後她走向了陳寧。
不是靠近他。是經過他。
但她經過他的時候,距離非常近。近到她的肩膀幾乎擦過了他的手臂。近到他能感覺到她走過時帶起的微弱氣流。
然後她的手動了。
速度不快。但非常精準。
她伸出右手,抓住了陳寧的右手。
不是抓手腕。是抓手。她把他的手從褲兜裡拉了出來,攤開了他的手掌。
陳寧的手掌上,有四個深深的半月形指甲印。
是他剛才攥拳的時候留下的。
夏雪低頭看了一眼那些指甲印。
然後她翻過了他的手,看他的手背。
虎口處。
那裡有一層薄薄的、但非常清晰的繭。
那層繭的位置不是在手掌的中央(那是長時間打字的人會磨出來的繭),而是在虎口的外側邊緣和拇指根部的連接處。那是長時間握滑鼠、以特定角度施加壓力、在滑鼠墊上做高速移動的人才會磨出來的繭。
和四年前,一模一樣。
夏雪的拇指在那層繭上輕輕劃了一下。
陳寧的手在她的觸碰下顫了一下。非常輕。輕到他自己都不確定是真的顫了還是只是肌肉的微弱反射。
「演。」夏雪的聲音從她的頭頂傳過來。她低著頭,瀏海遮住了她的表情,但她的聲音出賣了她。那個聲音裡沒有了毒舌,沒有了嘲諷,沒有了「冰山女神」的冷硬外殼。
只剩下一種東西。
一種她藏了四年、今晚借著兩杯清酒才敢露出來的東西。
「你繼續演。」她說。
她的拇指在那層繭上又劃了一下。
「我看你能裝到什麼時候。」
然後她鬆開了他的手。
轉過身。
走了。
她的背影消失在了花園的人群裡。串燈的暖黃光線在她的肩膀上一閃一閃,像一串正在倒數的星星。
陳寧站在原地。
他低頭看了一眼自己的右手。
手掌上還有四個指甲印。虎口處的繭在頂燈下泛著一層淡淡的光澤。
他的手還在抖。
這一次他確認了,是真的在抖。
不是害怕的抖。
是一種他壓了四年、今晚差一點就壓不住的東西在翻湧。
他攥了攥拳頭。鬆開。又攥了一下。
然後他拿起那瓶氣泡水,擰開瓶蓋,喝了一口。
零糖零卡零味道。
和四年前一樣。
(第十一章完)