待播素材的第一帧是前室的门。
这一段素材在台账上挂着三个编号:原始、留档、待播。三个编号指向同一份文件,只是导出时间不同。导出时间不同,看到的长度就不一样。她比对的时候用的是原始那一份,因为只有那一份带完整的时间戳,也只有那一份没有经过任何一次导出。
第二帧是那台小散热器,第三帧是等待者排队领热水的背影,第四帧跳到了前室外面,几个人正把便携设备搬上雪橇。
昨晚那段试运行的原始画面上,接头压力下降、湿痕扩大的那一段被剪掉了,检修位的画面整个不在。四帧之间的光不一样。第一帧偏蓝,第四帧偏灰,剪口接上去的时候颜色没有对齐。颜色没有对齐,说明中间被拿掉的那一段是在另一盏灯下拍的。
叶杳在剪辑台前把片段倒回去看第二遍。她看的不是画面,是时间戳。
时间戳在右下角,一秒跳一次。跳的时候不留痕,只有数字在动。
时间戳不能改。能改的是剪口,剪口一改,时间戳之间就对不上…对不上就有缺口,缺口就是证据。
原始素材从升温开始,到停拍请求出现在第几分钟,她记得。她记得的不是一个约数,是当时抄在册子上的那一行。
成片里那一段的总时长比原始素材短了十二分钟,缺口正好卡在湿痕出现和检修位之间。
十二分钟在成片里看不出来。成片本来就是剪出来的,掐掉一段不会留下痕迹,只会让前后两帧接得更紧。她量的是时间戳之间的差,不是长度。差对不上,就是中间少了一块。少的那一块没有名字,只有一段长度。
十二分钟不是均匀扣掉的。前面扣掉几十秒,后面扣掉几十秒,最大的一块集中在中间。
扣得越碎越不容易看出来。她见过这种剪法,剪的人不急,几秒几秒地切…
她把成片里出现的时间点一个个抄在纸上,抄完和原始素材的时间点并排放。两列并起来,看得见的是三段被抽掉的时长:检修位那一段、牌子背面那一行、以及高架通知的落款时刻。
前两段是画面,第三段只有一行小字,画面里也找不到了。三段的长度不一样,最长的一段是检修位,最短的一段是那行小字。
那行小字在原始画面里只占了二十三帧,短到没有人会在意。
“这一段为什么没有。”她问。
她问的时候没有抬头。抬头就会变成争论,不抬头才是核对。
值班审校员坐在她侧后方,桌上摊着一张高架出口的实时流量表。
他坐的位置比她的低半格。低半格的人说话要先起身,他没有起身…
“这一段是故障!”他说,“播出去,外面会以为路已经坏了!”
“路本来就有问题。它在掉压!”
“掉压是过程!”他把流量表往前推了半寸给她看,“高架桥通知发了,实体封闭还没做完。出口那一带已经堵了,急救车绕行。我把一段抢修画面播出去,明天早上那段路会更堵!这是我删的理由。”
叶杳看了一遍那张表上的曲线。曲线确实在往上走,晚高峰过去以后没有回落。
表上有三条线,一条是主路,两条是绕行。绕行那两条都在往上走,走得更陡的是靠北的那一条。往上走的那两条,最后都汇到同一个出口。
靠北那条线是她认得的路。急救车要绕的那一段就在那条线上…
“还有一个字段你删了。”她说,“供热对象的限制。原始牌子上背面写着只保前室和设备,不向住宅供热。成片里没有这一行。”
“这一行会被理解成区别对待!”
“它本来就是区别对待。前室和住宅不是一回事!”
“所以我说它会被理解成区别对待!”审校员说,“不是所有人都会先分清前室和住宅。”
叶杳把光标停在那一段上,没有继续争。
她把光标停在那里是为了留下位置。位置留着,这件事就还在页面上,不会被翻过去。翻不过去的东西,别人才没法说它不存在。
光标停在一个地方,系统就会在那个地方留一个未处理标记。
“我不要求你把画面还回来。”她说,“我只要求把删掉这件事记在内部剪辑日志里。剪了什么、什么时候剪的、谁批的,全写进去。”
“日志可以写。”审校员说,“写不写跟外面没关系。日志是我们内部的。”
“我知道跟外面没关系!”
“那你还写!”
“因为今天这一段是你剪的!”叶杳说,“以后有人问昨晚为什么看不到检修位,我至少能翻到是哪一天缺的。你现在觉得这句话没用,明天可能就有用!”
审校员看了她一会,把内部编辑登记打开,在删除事由那一栏里写了两行,签上自己的工号。
他签完把页面推过来让她看了一眼,没有让她签。页面停了三秒就被收了回去,收回的动作比推出来的快。
不让她签,这一条就不算她认过。她看懂了这一步,没有点破…
“这一段我可以给你内部留档!”他说,“对外我不动。对外的那一版还是照刚才那样播。”
“行!”
这个字她答得很快。答完把那三件不能放的东西又默数了一遍…
她给自己划的线是三件不能放的东西。
第一件是住户姓名和住址。第二件是设备病历。第三件是地下通道的位置。这三件放出去,受影响的人会被点名,被点名的下一步就是被围、被劝走、被要求交代来源。
她见过一次。去年秋天,一栋楼因为名单外流被查了三回。第一回查的是来源,第二回查的是谁抄的,第三回查的是那栋楼里还有谁在等。
三回查下来,名单上多了两页,人少了十一个。
那三回之后,那栋楼的人见到来登记的人就关门。门关上了,名单也就断了。断了的名单不会自己长回来,只会被当作本来就没有。
名单断了以后,那十一个人再也没有被任何一张表算进去。
她也没有放完整名单。备用关停表她没有拿到全文,她能确认的只有四件事:这份文件存在,它的生成时刻,它的字段目录,它的当前版本标识。
四件事里最难核的是版本标识。标识不带时间,只能和生成时刻对。
对的时候要用两份不同来源的记录,只有一份就不算对过…
这四样她逐项核过,核完抄在纸上,再一行一行敲进那份说明。
她把这几样加上一段可复核说明,一起送进了第一卷建立的那套分散证据保管链的一个分支节点。节点不是她选的,是那条链自己分出来的。
节点选在哪里,意味着谁先看到。她把这个位置也抄了下来…
那段说明她写了三遍。
第一遍写的是备用关停表已经生成,尚未执行。第二遍她删掉了尚未执行,因为执行状态她证明不了。第三遍她写的是:现有材料只能证明该文件在此时刻存在,不能证明其中任何条目已进入执行,也不能证明适用对象。
三遍里字数最多的是第三遍,语气最冷的也是第三遍。
冷的那一遍是最不容易被人拿去做标题的那一遍。
她以为这一句足够拦住误读。
审校员看完问她这段说明要不要一起进转发包。
“要!”叶杳说,“说明和散列必须一起发!”
“说明会被人拆掉!”
“拆掉是他们的事!”叶杳说,“我把说明和散列捆在同一份里发出去,谁拆都一样,原件上是捆着的。”
“你确定?”
“我确定!”
她确定的是捆这件事,不是解开这件事。这两个不是同一件事。
她当时确定的是原件。她没有想过原件会被转发几次。
原件在她这边是捆着的。出去以后,捆着的东西会被人一层一层解开,解开一层就少一层约束。
她后来数过,从原件到第三个转发版,中间只用了四十分钟…
第三次转发的版本出现在四十分钟后。
标题被换了。叶杳那份的标题是备用关停表相关材料说明,转发版变成了一份新的标题:核心区也将停热?内部文件已流出。
新标题里没有主语。没有主语就等于谁都可以往里填一个主语。
填进去的主语是核心区,不是东栈四区。范围被放大了一整层…
正文里,她那段说明被删掉了,散列值被截成前八位,字段目录被放到最前面,备用两个字不见了。
前八位看起来还像一串值,其实已经短到对不上任何一份原件。
短到对不上,就没有办法证明被删掉的九成是什么…
叶杳是在公共监控上看到后面的场面的。她没有画面权限,只能看公共探头。
公共探头只拍门和队伍,不拍柜台,也不拍价牌。
她调到最大倍率,能看清的也只是人的肩线和手里的袋子。
三个片区的储热设备销售点都亮着灯,最清楚的是南泵那个点,因为探头正对着门口。
门口排了队。第一个进店的人拿着一个写满字的纸条,纸条上列的是型号。她看不懂型号,但她看见了那人出门时抱着的箱子,箱子上印着储能单元的图样。
纸条是从别处抄来的。抄的人把型号抄错了一位,店员比对了两次才认出来。认出来以后他没有卖,让那人回去重新抄。那人站在门口把纸条摊在膝盖上改,改完又排到队尾。他排队的时候一直在看那张纸条,像怕它再错一次。
第二个人进去的时间很短,出来的时候拎了两个袋子。
袋子没有装满。装了一半,另一半拎在手上,怕压坏…
第三个人在门口停住,跟店员说了很久,最后空手出来,站在台阶上给家里打电话。他打电话的时候背对着镜头,肩膀先塌下去,后来才直起来。
他打电话的时候没有说价钱,只说了一句我先回去。
有个女人排在队伍中段,怀里抱着一个透明的盒子,盒子里是一台小型的夜间呼吸设备,管子绕成一圈。她一直在看手机。
她看手机不是在刷消息。屏幕上是那台呼吸设备的说明页,她把说明翻到耗电那一栏,翻过去又翻回来。说明页在灯下反光,她把手机转了一个角度,再转一个角度,才看清那一行最小的字。看清以后她把手机扣在盒子上,不再看了。
轮到她的时候,店里的人摇头,她抱着盒子站在门口没有走,反复把手机上的页面举给对方看。她举了三次,第三次以后没有再举。
她把盒子抱回去的时候,两只手都没有换位置。
还有一处柜台摆的是加热芯,细长的一盒,五枚装。
叶杳看着那格货架在四十分钟里空掉。最先到的人一人拿了两盒,后面的人只拿到一盒,最后来的那几个人连空盒都没摸到。
货架空掉以后,那格柜台上的灯还亮着。灯亮着,架子是空的。
空架子的反光比有货的时候亮。她盯着那块反光看了十几秒…十几秒里没有人再走到那格柜台前。
叶杳在监控里看了很久,随后把画面转到第二台探头上。
第二台探头在街对面,角度更斜,能同时拍到店门和半条人行道。两台探头的时间有半秒差。半秒在人群里不算什么,在排队人数上能差出一个人。她用两台对着数,数了两遍,两遍结果一样。两遍一样,她才把这个数记下来。
店里的标牌已经换了。早先写的是零售价,后来那一栏被一张白纸盖住,纸上手写着另一个数。同一个位置,前后两个数的差距看得出来。
新的数比旧的大了将近一半。写字的人把笔画压得很重,笔尖在纸上留了一道印。
那道印从纸上透到下面那一张,下面那一张上也有一道。
柜台前面有人掏钱,也有人看见新数字以后转身走了。
掏钱的人里有一半是替别人来的。他们掏钱之前会先打一个电话,问清楚要几枚、装在哪一台设备上。电话打不通的就在门口等,等到通了再进去。等到最后柜台里只剩一种型号,他们也只能买那一种。买错型号的人出门以后会把盒子翻过来看背面。
转身走的那个人在门口停了一下,回头看了一眼柜台,还是走了。
他走的时候没有加快步子,也没有放慢。不快不慢的走法,是已经决定不回头了。
抢购不是抽象流量。叶杳看得见队伍里有人是替家人排队,也看得见有人在店里和门口的两个人交换纸条。
她甚至看见一个人在柜台前掏出两叠钱,被店员推回去一次,第二次没有推。
推一次是规矩,不推是货不够了。这一条她从监控里看不出来,只能猜…
推一次和不推,中间隔着的是店里还剩多少。
有一个细节她反复看了一遍。柜台前有个中年男人买了加热芯,出门以后没有走远,站在探头正下方把盒子打开看了一眼,又合上,然后掏出手机打电话。
他打电话的时间不长,说完以后把盒子换了个手,往回走进了巷子。
叶杳看不到巷子里有什么,只看到他走进去之前停了一步,回头看了一眼还在排队的队伍。
那一眼看得很短,短到只看了一眼队伍的长度。
巷口没有灯。他进去以后,探头里就只剩排队的人了…
短程联络在晚上十一点进来。是梁渡。
他这个点不会打联络,除非是东西没了。
“出事了!”他说,“路线组前天留了一批兼容储热模块给后面改造用,采购没走完,只是口头保留。今天晚上销售点那边让我们确认提货时间,我们还没确认,他们就把保留撤了。”
“撤了几枚。”
“六枚!”梁渡说,“其中五枚当场就卖了。剩下那一枚他们说留着等我们回话,明天早上也留不住了。”
六枚不是一个小数。路线组按改造进度算过,每一具机体换一次兼容模块要用掉两枚,剩下两枚是备件。备件在账外,就意味着一台机器出事的时候没有东西可以顶上去。这些她不用问,报数的人自己会说。
“那两具护理转运舱呢。”
“一具停在废热站北侧,一具在换乘点外面。”梁渡说,“这两具原来各配一枚,用于独立回程电源。现在两枚都在别人手里,护理舱的回程冗余没了。明天要转运,就得跟车走,跟车就占车队的位置,占用别人的接驳位。”
“损失多少。”
“两具护理舱的独立回程没了,缺口是两枚模块,不能拿其他型号顶。别的型号电压不符,装上去等于没有。”梁渡停了一下,“还有一件事,我这边要按你说实话:那六枚是口头保留,没进过账!严格说,我们丢的是没进账的东西。但它明天会不会耽误人,是另一回事。”
叶杳把这两句都记下来了。她记的第一句是实物损失,第二句是梁渡自己添的那句:严格说,没进过账。
两句都记下来,是因为第二句才是他真正想说的。
把自己的那句话加在损失的后面,是怕别人只看见损失…
“这一句我也要写进说明!”她说,“不能只写我们损失了五枚!”
“写吧!”梁渡说,“丢没进账的东西,跟丢进账的东西,听起来是两件事。落到两具护理舱上就是一件事。”
“那两具护理舱明天怎么办。”
“一台改跟车,一台留在原地等下一批!”梁渡说,“留在原地那一台的主人今天下午在换乘点排过一次队,排了四十分钟,排到的时候位子已经发完了。他明天还得再来排。”
“我马上补一份说明!”她说,“把适用范围和执行状态写清楚!”
“你写!”梁渡说,“我这边今晚不睡!”
补发的说明在十一点四十提交。
系统回了一句:涉及公开材料,需二次审校。队列前面还有别的件。叶杳把提交时刻截了图,存在本机。
队列里前面的件数是七。这个数是从系统页面上读来的,不是估计的。七件在前面,一件按二十分钟算,就是两个多小时。两个多小时以后是深夜两点,那时候没有人会审。她算了一遍,没有再算第二遍。
截图存在本机,不进取证链。这是她自己给自己留的一个备份。
备份不进链,就不会被人替她撤销。
她又给审校员发了一条,只有一行:这份说明只加适用范围和执行状态,不加任何新内容,能不能走加急。
对面回得很快:加急需要两个人同时在岗,现在已经十一点五十,值班表上只有一个人。
她回了一个字:好。
她回这一个字的时候没有争。争一句,对面就多一条不回的理由。
她把这个字的时间也记住了。记住时间,比记住语气有用…
十一点五十,审校员敲她的门。
“追溯启动了!”他说,“你那批材料进了内部流程。”
“我知道!”
“你知道还有一件事吗。”他把手机屏幕转过来给她看,那是一条已经转了几轮的短消息,发信人不在她的联系人里。消息只有两行:你那份说明写得太像内部文件。你是不是在替他们说话。
屏幕的光从下往上照,把两个人的脸都照成了半明半暗。
那条消息已经转过几轮,转的人里有一个她认出了头像。
“我不回!”叶杳说,“回了也说不清。”
“有人会一直问!”
“那就一直有人问!”她说,“我这条权限留着,比回一句话有用!”
“你现在只有两条路。第一条,把已经发出去的那一份撤回来,声明作废,后面我陪你走完整程序。第二条,你不动,你的原始素材导出权今晚就停。”
“撤不回来!”
“为什么。”
“它进了分散保管链!”叶杳说,“我这边删掉,那一份还在别人手里。我声明的作废,只能证明我说过一句话,不能证明那份材料不存在。声明作废反倒会让已经看到的人以为我们改了口。”
审校员看着她,没有说话。
屋里只剩暖气管里的流水声。水流声一直没停,也没有变大。
“导出权你们停吧!”叶杳说,“我留着内部读取权就行。”
“谁说你还留着。”
“程序上写着!”叶杳把权限页翻到那一栏给他看,“冻结的是原始素材导出权。任务级内部读取我还在,后面要看的真实负荷记录还得从这里调。你们把这条也停了,我明天连自己要解释什么都不知道。”
审校员看完那一页,把话往回收了半步:“导出权停。复核改成双人。以后你要发东西,必须两个人签。”
“可以!”
她答这两个字的时候在看那一栏冻结原因,看的不是自己的名字。
“你这个态度我不好写。”
“那就写事实!”叶杳说,“写我提交时刻是十一点四十,你的回执是十一点四十二,抢购第一波发生在十点五十。写我提交那句说明的时间比抢购晚了五十分钟!”
她打开内部事故说明,把这五十分钟写了进去。
事故说明是一张空表,只有时间和事件的格子。她把每一次操作拆成单独一行,一行只写一个动作。写的时候她用的是提交时刻,不是印象里的先后。表填完以后她自己读了一遍,读的时候发现中间有一行写错了时间,改了回来。
她没有写公众误读是别人的错,也没有写成自己被陷害。她另起一行,写了官方审校延迟和转发平台拆分标题的时间点,把整条链条留在了同一页上。
五十这个数她自己又核了一遍。从十点五十到十一点四十,中间隔着一次抢购、一次转发和一次排队。
三个环节各自能说清,连起来就变成五十分钟…
审校员走的时候说了一句:“你这一页写上去,明天两边都会骂你。”
“那就骂!”
她关掉事故说明,又打开那份已经发出去的说明,从头读了一遍。
她把里面最要紧的一行挑出来,抄在纸上,压在自己的台灯底下:散列只能证明内容在某一刻存在过,证明不了它完整的意思,也证明不了它有没有被执行、对谁执行。
这一行她写进说明的时候就知道它挡不住误读,但没料到它会先被自己人删掉,再被外面的人当成没写过。
纸压在台灯底下,灯的底座压着纸的一个角。那个角不会被风吹起来。
灯关掉以后,纸还压在原来的位置。她第二天早上第一眼看的就是那张纸。
第二天早上八点,程序通知进了她的页面。
通知的页眉上盖着一个编号章,章是系统的,不是人的。系统章只证明这份通知生成过,不证明谁按下去的。她把这个编号抄下来,和正文里的条件抄在同一张纸上。抄的时候她用的是铅笔,铅笔可以改。
通知开头有两行缘由:因昨夜储热设备抢购与维修资源紧张,本次补充询问将纳入人格程序同日进行。
底下的正文只有一段,要求确认谁有资格为chs-01申请维修、领取部件并提交载体保全。
附带的条件写得很具体:临时划定一个履带维修位,配套一组相容张紧组件,两部分都只保留到当日午后。
只保留到当日午后这几个字后面没有写延期的办法。
没有延期的办法,就等于当天下午一定会有人去抢这个位子…
申报人必须具备资产关系,才可以在部件到货之前先占位。
这一条把能占位的人缩到了很小的一圈。圈外的人再着急也占不上。
通知里预填了一栏身份,填的不是事故证人,是资产控制人。被填的人名是闻昭。
叶杳把通知读了两遍,又翻回页首看了一遍发件时刻。
发件时刻是七点五十八。八点整送达,中间隔了两分钟。
两分钟够做一件事:把收件人从一个人改成另一个人…
她把这一页截了图,归档,然后点开自己那条被停掉的导出权状态页,确认了一件事:她的任务级内部读取权还在。
停掉的那一栏是灰的,旁边标着冻结原因和冻结时刻。没停的那一栏还是黑的,能点开。
灰的那一栏写着复核改成双人,没有写谁和谁。
她把那条权限页也截图归档,两份放在同一格。
一格放两张图,一张是别人让她看的,一张是她自己要留的。
两张图的时间戳差了两分钟,正好是通知送达的那两分钟…
她知道第二天她需要用第一种权限去查第二种权限不让她带走的东西。
两种权限在同一张页面上,一条灰,一条黑…