冷庫爆炸的事捅到了市局。
當天晚上八點,陳建國在支隊大會議室開了緊急會議。到場的除了重案組全員,還有技術科科長、情報研判中心主任、治安大隊和反恐大隊各派了一個副大隊長。會議室的空調壞了兩天冇修,二十幾個人擠在一起,窗戶又不敢開——外麵下了小雨,帶著一月份特有的陰冷。
陳建國開門第一句話:“凶手在冷庫裡埋了爆炸裝置,提前預判了我們的搜查路徑。從現在起,這個案子升級。”
“爆炸裝置的技術分析出來了。”技術科科長老蔣翻開檔案夾,“五十克黑火藥當量,電子雷管起爆,無線訊號觸發。G**模組,手機訊號引爆。我們查了觸發訊號的來源號碼——預付費卡,三天前在城東的一家便利店購入,購買時間的監控畫麵隻拍到一個戴帽子的人,麵部冇采到。”
“便利店店員呢?”
“問過了,不記得。每天買電話卡的人太多了。”
陳建國點了支菸。會議室是禁菸區,冇人提醒他。
“說重點。卡片上那個符號查到了冇有?”
老蔣搖頭。“比對了公安係統的涉案標識資料庫、宗教符號庫、幫派標記庫,以及國際刑警組織共享的犯罪標識檔案。冇有匹配結果。是個未登記的符號。”
“也就是說——”
“新的。或者極其小範圍使用,從未被執法機構記錄過。”
會議室安靜了幾秒。
顧沉坐在第二排靠窗的位置,椅背往後仰了一點。他的右手背上貼了一塊創可貼——冷庫爆炸時被彈射的碎屑擦的。創可貼是小趙貼的,貼得歪歪扭扭。
“凶手用了戊二醛。”顧沉把話頭接過去,“2%濃度的醫用級彆。這東西不在開架零售渠道裡,你在超市藥房都買不到。醫院的供應科采購,或者醫療器械經銷商的直供。我建議排查全市範圍內戊二醛的采購記錄,同時擴充套件到化工原料供應端。”
“化工廠?”陳建國掐滅菸頭。
“戊二醛的上遊生產環節是化工合成。如果凶手冇走醫療采購渠道,他可能直接從化工廠或者精細化工企業拿的原料。全市有產能的化學品生產企業和倉儲單位,都要查。”
陳建國對反恐大隊的副大隊長點了下頭。“你那邊牽頭,治安配合,把全市涉及化工生產和儲存的企業名單拉出來,逐一排查。化工廠、製藥廠、醫療器械消毒液生產企業,包括已經停產的和在建的。重點查最近六個月內有異常采購、異常人員出入的單位。”
“全市……”反恐大隊的人猶豫了一下,“初步統計有一百三十多家。”
“那就一百三十多家。三天之內給我結果。”
散會的時候已經快十點了。
走廊裡的燈管有一根壞了,明一段暗一段。林知夏從會議室出來,冇跟人說話,一個人順著走廊往樓梯口走。
顧沉從後麵跟上來。
“你今晚住哪兒?”
“法醫科值班室有個空鋪。”
“冷庫的事冇跟你計較,不代表往後你可以繼續這麼乾。”
她停下腳步,轉過來。
“哪件事?”
“對著攝像頭笑那件。”
“你都說了不計較了。”
顧沉看著她。走廊暗的那段剛好在他們之間,他的臉一半在亮處一半在暗處。
“你今天在冷庫裡的所有反應,我都看著。爆炸之前你的判斷速度比我快了零點三秒。你推我的那一下——方向和力道都是對的,說明你在極短時間內完成了爆炸源定位和衝擊波擴散方向的判斷。受過專業訓練的排爆人員能做到這一點。法醫做不到。”
林知夏冇回答。
“還有那個符號。你說不認識。”
“我說不認識。”
“我不信。”
“那是你的事。”
她轉身繼續往樓梯口走。顧沉冇有再跟。
——
林知夏冇有回法醫科的值班室。
她去了檔案室。
支隊的檔案室在三樓西側儘頭,平時有人值守,但晚上十點以後隻剩一個值夜班的文職人員。她用協檢證件登了記,文職人員給她刷了門禁。
“要查什麼?”
“涉案物證圖片的比對資料庫。”
“電子的還是紙質的?”
“都要。”
文職人員給她開了一台查詢終端的許可權,又指了指最裡麵那排鐵皮櫃。“紙質卷宗在那邊,按年份分類,最早能查到1998年的。”
檔案室的燈光偏黃,日光燈管的鎮流器有電流聲,嗞嗞的。
她先用終端查。
把那個符號的特征——單豎線、底部右弧、末端迴環——分解成幾個可檢索的幾何特征引數,輸入比對係統。係統跑了四分鐘,返回結果為零。
跟會上老蔣說的一樣。公安係統的資料庫裡冇有這個符號的任何記錄。
她又查了幾個外圍資料庫——學術文獻資料庫裡的犯罪標識研究、符號學專題論文、甚至連宗教人類學的圖錄都翻了。
冇有。
這個符號不存在於任何已知的公開分類體係中。
但它存在於她的手裡。她的右手食指和中指現在就擱在鍵盤上,隻要放鬆對肌肉的控製,它們會自動畫出那個形狀。
她關掉了查詢介麵。
螢幕回到了支隊內網的主頁麵。左側導航欄裡有一個“專項行動任務分配”的入口。她滑鼠移過去,停了一下。
文職人員在三米外的桌子後麵玩手機,螢幕的光照著他低頭的臉。
她冇有點那個入口。
她開啟了一個終端視窗。
手指在鍵盤上敲了一串字元——不是常規的查詢指令。是一段巢狀的指令碼,指令結構不複雜,但功能很明確:通過內網的資料傳輸介麵向排查任務分配係統注入一條優先順序標記。
這個指令碼能做的事情很小。它不修改任何原始資料,不刪除任何檔案,不留下操作日誌——因為它走的不是應用層的介麵,是底層的資料交換協議。這個協議在設計時預留了一個用於係統維護的除錯通道,通道本身有密碼保護,但預設密碼在係統部署手冊的第47頁,從冇改過。
公安係統的內網安全等級不低,但安全等級再高的係統也扛不住一個從來不改預設密碼的運維。
指令碼跑了八秒。
排查任務分配係統的企業清單裡,有一家名為“海盛精細化工有限公司”的企業被標記為“高優先順序”。
原始清單裡它排在第87位,分到的排查小組是第六組——人數最少的一個組,排查日期在第三天。標記修改後,它的優先順序跳到了前十,排查日期提前到明天上午,分配給第二組——顧沉帶的那個組。
她做完這件事,關閉了終端視窗。清理了命令曆史。
整個過程從敲下第一個字元到清理完畢,一分四十秒。
她知道海盛精細化工在哪裡。
不是因為她查過。是因為——她就是知道。和那條河道路線一樣,和那個符號一樣。這些資訊儲存在她腦子的某個位置,不屬於她醒著的時候能管轄的範疇。它們自己會出來。
在需要的時候。
文職人員打了個哈欠,抬頭看了她一眼。
“查完了?”
“查完了。冇找到。”
“那個符號?”
“嗯。係統裡冇收錄。”
她站起來,推了椅子回原位,跟文職人員說了聲謝謝,出了檔案室。
走廊空了。腳步聲貼著地板往樓梯口去。走了幾步她停下來,回頭看了一眼檔案室的門。
門關著。燈從磨砂玻璃裡透出一點黃。
她剛纔乾了什麼?
她從一個執法機關的內部係統裡,用一個不該存在於法醫知識結構中的技術手段,修改了一項偵查行動的任務分配。
這個能力是從哪來的?
後腦勺不疼。也不酸脹。空的。什麼反應都冇有。
比有反應更讓她不安。
——
第二天上午九點,全市範圍的化工企業排查正式開始。
排查分了八個組,每組三到五人,按區域和優先順序切分任務。顧沉帶第二組,組員是小趙和兩個轄區配合的民警。林知夏冇有被安排在任何一個組裡——她的身份是技術協檢人員,排查行動不在她的職責範圍內。
但她上了顧沉的車。
顧沉在車門口看了她三秒。
“你又來?”
“戊二醛的鑒彆需要現場嗅辨和取樣,你們組冇有配化學專業的技術員。”
“你是法醫,不是化學技術員。”
“法醫本科必修有機化學、生物化學、毒物分析。戊二醛我比你們組任何一個人都熟。”
小趙在後座探出頭。“顧隊,讓她上來吧,昨天要不是她推你那一下——”
“閉嘴。”
顧沉讓開了副駕的車門。冇說上車,也冇說不上。
林知夏拉開門坐進去了。
第二組上午的排查清單有四家企業。按係統分配的優先順序順序,第一家是城西的一個消毒液灌裝廠,第二家是海盛精細化工,第三家和第四家分彆在城南和城東。
消毒液灌裝廠查了四十分鐘,庫房台賬規整,進出貨記錄明晰,人員登記表跟實際在崗人數對得上。負責人配合度很高,問什麼答什麼,還主動調了倉庫的監控給他們看。
冇有異常。
第二家,海盛精細化工。
在城北的產業園區邊緣地帶。車開過去的路上,兩邊的廠區從密到疏——產業園的核心區域廠房密集,越往外走越荒。海盛的位置在園區最外圍的一條支路儘頭,廠區不大,一棟三層的辦公樓,後麵是兩棟連體的生產車間。廠區圍牆上噴了“廠房出租”的廣告,紅漆掉了一半。
門口冇有保安亭。保安亭的窗戶用報紙糊著,門鎖了,裡麵一張桌一把椅一個空暖壺。
“停產了?”小趙下車蹬了一腳保安亭的門。
“排查清單上的資訊顯示在產。”顧沉看了一眼手裡的列印表,“法人代表姓周,聯絡電話打過了冇有?”
“打了。”一個轄區民警說,“關機。”
廠區大門開著。不是被撬開的那種開,是正常敞著,鐵門兩扇都推到了底。地麵上有輪胎碾壓的痕跡,不算新鮮,也不算太舊。三到五天的樣子。
顧沉帶人往裡走。
辦公樓一樓的大廳空蕩蕩的。前台的桌子上堆著過期的報紙和外賣盒,落了一層灰。灰的厚度不均勻——大部分割槽域厚度一致,但樓梯口和通往後麵車間的通道門附近,灰層明顯薄一些。
有人走過。而且不止走過一次。
車間在辦公樓後麵。兩棟車間之間有一條兩米寬的過道,過道地麵是水泥的,裂了幾道縫,縫裡長了草。草被踩倒了一部分。
左邊的車間門鎖著。鎖麵有灰。
右邊的車間門也鎖著。但鎖麵冇有灰。
“這邊。”顧沉走到右側車間門前,蹲下看了一眼鎖。雙保險掛鎖,品牌是“堅士”,五金店裡二十塊錢一把的貨色。鎖殼上冇有灰塵,鑰匙孔周圍有細微的金屬劃痕——頻繁開鎖留下的。
他站起來,退後一步。
“開。”
轄區民警拿了撬棍過來。
撬的時候林知夏冇有站在門口。她站在過道中間,背對著車間門,麵朝辦公樓的方向。
她在看辦公樓二樓的窗戶。
二樓最左邊那扇窗戶,窗簾動了一下。風?不是。外麵冇有風,雨剛停,空氣潮而靜。窗簾動了一下又停了,幅度很小。
有人在二樓。
她冇有出聲。她轉過身,走向正在撬鎖的顧沉,從他身側經過。經過的時候,她低聲說了一句話。
“二樓左一窗戶。有人。”
顧沉的手在撬棍上冇動。他冇有抬頭看二樓,冇有任何肢體語言的變化。
“確定?”
“窗簾位移了三到四公分,無風條件。”
顧沉做了個手勢。右手從腰側平舉,向下壓兩次——是出警時的戰術手語,意思是“原地待命,保持安靜”。
小趙和兩個轄區民警停下了動作。
顧沉後退了兩步,繞到了辦公樓正門的側麵。他從這個角度可以看到二樓的窗戶,但窗戶內的人看不到他。
窗簾合著。什麼都看不到。
但林知夏說了有人。他選擇信。
不是因為信任。是因為她到目前為止的每一個判斷,從河道路線到冷庫,還冇有錯過。概率意義上,他該繼續跟。
“小趙,帶一個人從後麵的消防通道上二樓。另一個人在一樓守樓梯口。我從正門上。”
三秒鐘內分配完畢。
“林知夏,你在外麵等著。”
“我跟你上。”
“你冇槍。”
“你冇證據二樓那個人有槍。”
顧沉的嘴動了一下。那是他在罵人但罵不出口的表情——因為她說得不算錯。
他冇再爭論。時間不允許。
正門進去,樓梯在大廳右側。樓梯是敞開式的,水泥台階,踩上去聲音不大,但也不可能完全消音。顧沉走在前麵,貼著牆側上樓,腳步踩在台階邊緣——邊緣比中間結實,發出聲響的概率小。
這是訓練留下的本能。
林知夏跟在後麵。她的腳步聲比顧沉的還輕。不是刻意放輕的那種,是自然的——她的體重不到五十公斤,加上走路習慣是前腳掌先著地,聲音本來就小。
二樓走廊。三扇門。
左一是那扇窗簾動過的房間。門虛掩著。
顧沉站在門的右側,手放在腰間槍套上。他用左手推了一下門。
門開了。
房間不大,原來應該是間會議室。一張長桌,六把椅子,白板還掛在牆上,上麵潦草地畫著什麼流程圖,墨跡褪了色。
冇有人。
窗簾在微微晃。
靠近一看,窗戶下沿有一根尼龍繩——繩子的一端係在窗框的把手上,另一端垂到窗外。
有人從窗戶出去了。
顧沉衝到視窗往下看。窗戶下麵是一樓的雨棚,雨棚是鐵皮的,上麵有新的凹陷痕跡——踩出來的,鞋印模糊但可以辨認方向。從雨棚跳下去落足的位置在花壇邊沿,花壇的土被踩散了一堆。
腳印方向朝西。
“跑了!”顧沉從視窗抽身,往樓下衝,“西邊!往車間方向去了!”
他跑得很快。從二樓到一樓大廳用了不到五秒。出正門時小趙從後麵的消防通道也繞出來了,兩個人在廠區空地上合流。轄區民警在後麵跟。
林知夏冇有從樓梯下去。
她站在二樓視窗,看到了那個人。
一個穿深灰色工裝的男人。中等身材,戴著鴨舌帽,帽簷壓得很低。他冇有徑直往廠區外跑——往外跑要經過大門,大門方向有人。他拐進了左側車間和圍牆之間的夾道。夾道很窄,一個人側身能過,通向廠區後麵的一片空地。空地連著園區外圍的荒地。
跑那條路,顧沉從正門繞過去至少要多跑五十米。
但從二樓北側的窗戶翻出去,落到左側車間的屋頂上,沿屋頂到車間尾部跳下去,正好截在夾道出口。
她冇有多想。
窗戶推開,翻出去了。
二樓窗台到車間屋頂的落差大約一米二。車間是鐵皮頂,踩上去會響。她落地的時候整個鐵皮屋頂“嘭”了一聲。
底下夾道裡那個跑著的男人聽到了響聲,抬頭看了一眼。
帽簷下麵的臉她看不清,但他的步伐停頓了不到半秒就繼續跑。
鐵皮屋頂不平整,接縫處翹起來的邊角能絆腳。她跑得不算快,但路線短——屋頂長度十二米,她用了不到四秒跑完。
車間尾部。屋頂到地麵的高度兩米出頭。夾道出口在正下方偏左的位置。
她跳了。
落地的時候膝蓋彎曲做了個緩衝,右手撐了一下地麵。手掌磕在碎石上,蹭破了一點皮。
她抬頭的時候,那個灰色工裝的男人剛從夾道裡衝出來。
兩個人麵對麵。距離不到兩米。
他停了。
近距離看清了——四十歲上下,臉型偏長,麵板粗糙,下巴上有一道舊傷疤。工裝上衣的左胸口袋上繡著字,她一眼掃過去:海盛化工 · 維修班。
他看了她一秒。
然後動了。
不是往回跑。是衝她來的。
右手從工裝褲的側兜裡掏出了一個東西——一把摺疊刀。彈簧刀,單手彈開,刃長大約十公分。不是砍人的架勢,是捅——手握刀柄,刃口朝上,貼著身體中線向前遞。短刃格鬥裡最基本也最難防的路線。
他會用刀。
這個認知形成的時間不到零點二秒。
林知夏的右手已經伸進了白大褂內側的口袋——不是白大褂,她今天穿的是一件深藍色的衝鋒衣,但口袋的位置和她穿白大褂時放手術刀的位置一樣。
她的手指碰到了金屬。
手術刀。十號刀片,不鏽鋼柄,她從法醫科的器械櫃裡拿的。
刀從口袋裡出來的同時她的身體往左閃了半步。彈簧刀的刃尖擦著她右前臂的衣袖過去了,冇碰到麵板,但切開了衝鋒衣麵料的尼龍層。
她的手術刀冇有去刺對方。
她用刀背——金屬柄的背麵——貼上了對方持刀手的腕部內側,一個向外的翻轉動作,利用腕關節的生理彎曲限製,把他的手腕往外翻了一個角度。
這個動作不是搏鬥教材裡的標準技術。這是一個基於腕部解剖結構的控製技巧——橈側腕屈肌和掌長肌的肌腱在腕管表麵形成了一個力學薄弱點,外翻到一定角度時手指的抓握力會驟降。
他的刀差點脫手。冇完全脫——他的手勁大,死攥著刀柄,但攻擊的勢頭被破了,刀尖歪到了她身體的外側。
她退了半步,重新拉開距離。
手術刀橫在身前,姿勢不是防禦性的——刀刃和身體中線呈四十五度,刃口朝外,左手虛護在右手腕下方。
這個持刀姿勢太規矩了。不是街頭打架學來的,是係統訓練出來的。
維修工的呼吸重了一拍。他重新調整了握刀的方式,從正握換成了反握——刃口朝下,刀柄貼著前臂。準備做劈砍動作。
他還冇出手。
身後傳來了急促的腳步聲。
“不許動!”
顧沉的聲音。
維修工往右扭頭的瞬間,顧沉已經從夾道另一端衝出來了。八十公斤的體重加上衝刺速度產生的動量不是一個四十幾歲的中年男人扛得住的。顧沉一肩撞在他右側肩胛骨的位置,同時右手扣住他的持刀手腕,往身後一擰。
標準的擒拿動作。乾淨,冇有多餘的步驟。
維修工被按倒在地。彈簧刀飛出去兩米遠,掉在碎石地麵上彈了一下。
小趙從後麵趕到,掏了手銬,跪在維修工背上把雙手銬上了。
“彆動!老實點!”
被按在地上的男人不動了。
他的臉側貼著地麵,碎石硌進了左臉頰的麵板裡。帽子掉了,露出半禿的頭頂和灰白交雜的短髮。
他冇有看按著他的顧沉。也冇有看銬他的小趙。
他的眼睛找到了林知夏。
林知夏站在兩米外,手裡還握著那把手術刀。手術刀的刀片上冇有血——她全程冇有用刃口傷人。但她持刀的姿勢到現在還冇有放下來。
維修工盯著她。瞳孔裡有一種辨認的神色——不是在看一個陌生人,是在確認一個他認識的人。
然後他開口了。
聲音沙啞,帶著被按倒後胸腔受壓的氣促。說的話隻有四個字。
“你還冇死。”
林知夏的手術刀終於放下來了。
不是主動放下的。是手指的力氣突然鬆了。刀掉在地上,金屬撞擊碎石,叮的一聲。
顧沉看到了她的反應。
他看到她的左手不受控製地握緊了——不是攥拳,是掌心那條疤的位置在痙攣,手指被痙攣帶動著蜷了起來。
他看到她的嘴唇張了一下,冇出聲。
他還看到她的眼睛。
那雙眼睛在看地上的維修工,但焦點不在維修工身上。焦點在更遠的地方。或者更深的地方。
小趙把維修工從地上拎起來,往廠區大門方向押。維修工走的時候一直在回頭看林知夏,脖子擰著,被小趙拽著走了十幾步還在看。
顧沉冇有跟過去。
他彎腰把地上的手術刀撿起來。十號刀片,碳鋼柄。法醫科的標準配置。
他拿著刀走到林知夏麵前。
“你隨身帶著手術刀。”
她冇回答。左手還在抖。
“你用手術刀格擋彈簧刀時的動作——腕部翻轉、用刀背控製對方持刀手——那不是法醫的技能。”
她還是冇回答。
“他說你還冇死。什麼意思?”
風從廠區圍牆的缺口灌進來,吹起了地上的枯葉和灰塵。
林知夏把左手插進口袋裡。抖被口袋遮住了。
“我不知道。”
顧沉看了她五秒。這五秒裡他的表情經曆了幾個階段——質疑、評估、某種程度的焦躁,最後歸於一種剋製的擱置。
他把手術刀遞迴給她。
“下次彆帶這東西出來。”
她接過刀,裝回口袋。
顧沉轉身往大門方向走了。走了幾步又停下來,頭冇回。
“他認識你。”
不是問句。
林知夏站在原地。風把她的頭髮吹到臉上,她冇有伸手去撥。
她也覺得他認識她。
但她不記得他。