The London Project (Portal Book 1)
Page 16
‘Did the blade make it to the victim’s heart?’ Louisa asked.
‘Yes. It entered between the fifth and sixth ribs at an upward angle of thirty degrees. The victim died instantly.’
‘Please tell me we have witnesses for this one. This place must have been packed with commuters.’
‘It was packed all right, but no-one remembered seeing anyone with Marshall. One woman reported seeing him slump to the ground but she didn’t stop to see what was wrong with him. She assumed he was drunk. As did everyone else who remembered seeing him lying on the floor. People even stepped over him. It took seven minutes before someone spotted the blood and raised the alarm.’
‘How many potential matches do we have for this one?’
‘Two hundred and eighty-seven. Based on the period of time during which he could have been killed, derived from when he left the tube and entered the tunnel. We only have sense coverage in the train carriage he exited. The rest of the station is a dead zone.’
Louisa rubbed her eyes. The sense booth’s simulation may have been near-real, but her eyes were feeling the strain. She was reluctant to admit it, but the evidence pointed to a single assailant for at least the first two murders. The strategies employed were identical. Kill the victim in a dead zone with a high population density and then cause a panic, allowing him to escape in the confusion. It was clever, but it shouldn’t allow the murderer to completely escape detection. The sense perimeter should have picked him up when he passed through it. ‘All right, get me out of this thing.’
The sphere went dark again. A second later the hatch sprang open and Louisa gratefully hauled herself out. When she stood up she staggered and would have fallen if Sloan hadn’t steadied her.
‘Give it a moment,’ Sloan said. ‘Leaving the booth can be disorientating.’
‘Thanks, I’m fine,’ said Louisa.
She headed back to the auditorium with Rick while Sloan shut down the console. ‘What do you think?’
‘I think SCD7 are screwed,’ Rick said. ‘They haven’t a hope in hell of finding the murderer amongst so many matches. It would take weeks to follow each person through the sense logs.’
Louisa silently agreed. The profile-forging tech the killer used had rendered the sense strips and CADET practically useless.
The DI was waiting for them when they got back. He looked up expectantly. ‘Well?’
‘You’re right about one thing,’ Louisa said. ‘There’s no way those three murders could have been pulled off without profile forging. And not just the standard jail-breaked terminal kind.’
‘Bollocks. I’d hoped I was wrong. I’ve been thinking over what you said about the amount of planning required for the murders, but I still think the Portal breach is being used as cover. I know,’ the DI held up his hands as Louisa opened her mouth to protest, ‘it would have taken a small army to monitor each of the targets in order to take them out that quickly after the news of the breach broke. One alternative remains: they had help from someone with access to the sense strip logs.’
‘If that’s the case, then not just historical logs,’ Louisa said. ‘Real-time access. Only SIU have the capability. Unless…could someone have gained access to the MET Subnet when Portal was breached?’
‘SIU completed an audit on the MET Subnet’s security following the breach. They don’t believe it’s been compromised. Let’s try and identify the forged profiles first. We’ll worry about the subnet access later, and it doesn’t leave this room, okay?’ He looked at Louisa and Rick in turn and they both nodded in agreement. The last thing they needed was an internal witch-hunt on top of the riots and the murders.
‘Coates,’ the DI called to an officer sitting at one of the consoles. He was wearing a Led Zeppelin t-shirt along with shorts and flip-flops. Louisa guessed he was SIU. They rarely felt the need to dress smartly on the job. ‘Where are we with identifying potential forged profiles?’
‘We’ve run through all the history graphs, twice,’ Coates said. ‘There’s nothing out of the ordinary in any of them. As far as CADET is concerned they’re all the real deal.’
‘There’s got to be something distinguishing them from the legit profiles,’ Louisa said. ‘What about their date of origin? Were any of them initiated recently?’
‘No. They’re all at least four years old. Their owners all had jobs, mortgages—boring everyday lives. We even checked out their family members living in London. Their profiles are clean too.’
‘What if you’re not looking for something out of the ordinary?’ Louisa said, suddenly remembering what Ed had said about Baz’s forged profile.
The DI frowned. ‘What do you mean?’
‘The forger doesn’t want it to stand out. That’s the whole point.’
‘How do we tell them apart, then?’ Coates asked.
‘They won’t just be clean of criminal activities. It’s everything else missing we should be looking for. Every trace of…colour, for want of a better word. Every dirty little perversion people get up to in private. Porn for example.’
The DI raised an eyebrow and Coates giggled nervously. Even Rick gave her a strange look.
Louisa ignored them and continued, ‘Gambling, prostitution, illegal drugs—it all leaves traces on your profile, either from a financial transaction or a logged location where illegal activity is known to take place.’
‘Okay, I see where you’re going with this.’ The DI looked over at Coates who shrugged in response.
‘It’s worth a try,’ Coates said. ‘We already have tailored CADET routines we use to identify drug-related offences within the history graphs. I could probably come up with a useable filter in half an hour or so.’
The DI nodded. ‘Do it.’
Now they had a tangible goal to work towards, the mood in the auditorium changed immediately. The air of despondency was swept away by a burst of activity as the SCD7 officers set about their task with a renewed vigour.
Louisa and Rick appeared to have been forgotten. She debated whether to offer to help by manning one of the other consoles, but in the end decided against it. She didn’t want to disturb the team in their efforts. Rick had taken the opportunity to sneak up to the highest tier and had collapsed wearily into one of the console chairs. Louisa joined him. He had stretched out as best he could, his arms folded, head tipped back and mouth hanging open. It looked like an incredibly uncomfortable position, but Louisa was sure he was mere seconds from unconsciousness. It was one of his talents. The man could literally sleep anywhere.
Louisa sat beside him. ‘What were you doing out so late anyway? I’m surprised Sarah lets you go out boozing while she’s at home with the kids.’
‘Once a month we let each other have a night off,’ Rick said, his eyes still closed. ‘It was my turn.’
‘Was Sarah up when you got back?’
‘Nah. And I slipped back out quick-sharp when my terminal went off. Didn’t want to wake up the house.’
‘Good. She didn’t see you were missing your wedding ring, then.’
Rick jerked forward, his eyes bulging. ‘Fuck!’ He searched frantically through his jacket pockets, then sagged back. ‘I left it back at the office.’ He reassumed his splayed-out pose.
Louisa shook her head but remained silent. She wouldn’t say anything to Sarah, either. Nothing that happened on the job was ever mentioned to the ‘wives’. It was an unwritten rule. You needed to have the confidence your partner had your back, no matter what happened. A breakdown in trust would undermine her relationship with Rick and she wasn’t prepared to do anything to risk it. Besides, she was fond of him. He had such a friendly, unassuming manner you couldn’t help but like the bloke, even if he was a cheating rat. She wondered if that made her a hypocrite. If she could overlook Rick cheating on his wife, then why couldn’t she forgive John?
There was a buzz of tension directly behind her eyes and she rubbed her temples to try and massage some of the tightness away. Her head was spinning she was so weary.
A long, long, unadulterated sleep was definitely overdue. Just for a second—I’ll rest my eyes just for a second…
CHAPTER FOURTEEN
A notification ping from Louisa’s terminal snapped her awake. She didn’t realise she’d slept at first but then she noticed half an hour had passed. She had to admit she felt better for it.
The message was a notification from Claire’s case file. Bill had attached something to the PM results. Curious now, she thumbed through to the relevant section. His colleague had come through with the genome sequencing of the neurons Bill suspected were artificial. Louisa skipped through a few paragraphs of indecipherable medical jargon to Bill’s summary at the end. They were artificial. Bill had even included the sequencing variation between them and Claire’s own cells.
Louisa placed a call request with Ed Cooley. He answered in a few seconds, his face filling the terminal screen.
‘Morning, Detective.’ Ed grinned.
‘You look surprisingly…chipper for such an early hour,’ Louisa said.
‘I feel great.’ He took a swig from a can. Louisa squinted at the label on the side of the drink. ‘Ultra Blitz’—Louisa recognised it as an energy drink consistently advertised to her kids in screencast breaks. Not that she would let Jess or Charlie anywhere near them. They had enough chemical stimulants to keep you up for days. Charlie would be bouncing off the walls with one sip.
‘You should be careful with those things,’ Louisa said. ‘They’re not good for you.’
‘I’m fine,’ Ed said dismissively. ‘Besides, my health is being constantly monitored, remember?’ He tapped his sense band.
‘I need a favour. I assume you’re pulling an all-nighter on the riots?’
‘Yeah, but it’s boring as hell. Following kids around the streets and coordinating responses to scoop up the ones who start looting isn’t exactly stretching my capabilities.’
‘Then I might have something interesting for you. Bill uploaded a genome sequencing variance for the synthetic cells he found in Claire Harris’ brain. Is there any way to find out where the cells were created?’
Ed thought about it for a moment. ‘Sure, it’s possible. The lab that altered the genome could have inserted the genetic equivalent of a water mark to establish copyright. As long as they’ve encoded it in plain text, finding the copyright should be a simple matter of executing the correct steganographic algorithm against the genome. I can run the code through a selection. If any of them work, a language parser will pick out potential words.’
Louisa caught sight of movement out of the corner of her eye. The DI was waving at her. ‘Thanks Ed, let me know as soon as you find anything.’
She elbowed Rick awake and headed back down the steps.
‘Coates has managed to rule out a large proportion of the profiles from the first crime scene based on your theory,’ the DI said.
‘For the first murder we’re down to fifteen,’ Coates said. ‘That’s fifteen profiles which match our new criteria and whose owners were close enough to the club at the time of the second murder to potentially carry it out.’
‘It’s a manageable number,’ the DI said. ‘I want them followed manually from when they were picked up on the theatre’s sense perimeter right through to the time of the second murder. No mistakes, people. Let’s find this guy.’
They worked in pairs because it was easy for one person to make a mistake and lose sight of someone in the sense logs. Then you had to backtrack and try and find out where they’d gone into a shop, hopped on a bus, or entered a dead zone. Louisa paired with Rick. The first two profiles belonged to a couple who’d gone to the theatre together. When the performance was cut short they crossed the sense perimeter and made a beeline for Leicester Square. That got Louisa and Rick excited, but then they passed by the entrance of the street where the nightclub was located and entered Leicester Square tube station. The station was a dead zone but they were positively ID’d by a sense strip on a Picadilly Line train. The couple got off at Hammersmith and headed home straight from there. Their history graphs indicated they didn’t leave their flat for the rest of the evening and a sense perimeter established by Louisa confirmed it.
Rick had just brought up the next profile when Coates called out to the DI. ‘Sir, I think I’ve got something.’
They all hurried over to stand around Coates’ screen.
‘I was following this guy called Joeseph Watts. He left the theatre and milled around town for a bit. It was a bugger to follow him because he kept disappearing into pubs and clubs and then leaving out the back doors and fire exits. Thankfully each time he was picked up by a sense strip. But have a look at this.’
They watched the man as he entered another theatre on Charing Cross Road. Then he disappeared from the sense logs.
‘So he went to another show,’ Rick said. ‘Maybe he’s a musical buff?’
‘According to his history graph he’s still in there,’ Coates said. ‘I established a sense perimeter around the theatre. He didn’t come back out. ’
‘So where did he go?’ The DI asked.
‘Watch,’ Coates said.
A few more people entered the theatre and then a man walked out. It wasn’t Joeseph Watts. This man was much younger, barely out of his teens. He was wearing a woollen beanie hat.
‘This guy’s called Henry Foster,’ Coates said, ‘according to his profile anyway. He’s also on the reduced profile list for the second murder. The clothes are different, but he could have stashed a change of clothes inside. He’s also the same build and exactly the same height as Joeseph Watts. We extrapolated the height from the sense footage. But now it gets interesting.’
The man made his way to the nightclub off Leicester Square and entered. Louisa checked the clock on the logs. It was half an hour before the estimated time of death for the second victim.
‘The time’s a bit tight if this is our guy,’ she said.
‘But it’s possible,’ Coates said. ‘Now we wait until the fire alarm goes off and…’
Henry Foster hurried out of the club with the rest of the punters. They milled around outside waiting for the security guards to let them back in, laughing with their friends and smoking cigarettes. Foster didn’t wait with them. He headed straight off.
‘Henry walks around town for the next half hour before doing a disappearing act inside a pub in Covent Garden,’ Coates said.
‘Let me guess,’ the DI said, ‘he doesn’t come out?’
‘Bingo,’ Coates said, clearly revelling in the attention, ‘but this guy comes out five minutes later.’ Coates pointed at his screen where a man in his forties wearing another baseball cap left the pub. ‘Jamie Keller. He’s on our third reduced list. Again the same height and build as the other two. Guess where he ends up?’
‘Tottenham Court Road,’ Louisa murmured.
‘Precisely,’ Coates said. ‘This is as far as I’ve got. It looks promising though, doesn’t it?’
The DI nodded. ‘Bring it up on the main screen.’
‘What’s with all the hats, anyway?’ Rick asked.
‘Baz Waters had his hood up when the sense strips thought he was someone else,’ Louisa said. ‘Maybe they can disguise their faces but not their hair.’
Coates mirrored his screen onto the wall. ‘He didn’t get on a train.’ Coates scanned through Jamie Keller’s history graph. With the CSCA emergency protocols in force his entire Portal activity was laid bare. Or rather, his made up history, if this was a forged profile. ‘The next entry is from a sense strip that logged Keller when he left the station.’ Coates brought up the sense footage. Keller wasn’t in any sort of hurry as he walked up Oxford Street. If Coates was correct then this guy had just murdered three people in cold blood in under two hours. But he seemed so relaxed, like he hadn’t a care in the world. A shiver ran up Louisa’s spine.
‘How long did he spend in the station?’ the DI asked.
‘Just under fifteen minutes,’ Coates said. ‘Plenty of time to
take care of our third victim.’
The DI said nothing but Louisa knew from his grim expression he was running the third murder through in his head. As was she. The victim hasn’t been hanging around the tube station for any length of time. He got off the train and headed straight for an exit. Keller, or Foster, or whoever he was, had entered the station, intercepted and assassinated his target, then left, all in the space of fifteen minutes. It most definitely wasn’t plenty of time.
Coates followed the man as he headed in a generally easterly direction. He tried a few of his tricks along the way to mask his trail, like ducking into pubs and exiting out the back, but each time the sense strips picked him up and logged it to the history graph.
‘This is the last entry in his history graph,’ Coates said. Keller had entered a restaurant. ‘It looks like he switched identities again.’
Coates wrapped the restaurant in a sense perimeter and manually scrutinised everyone who crossed it. It was slow going, but Coates was taking his time, nervous now of making a mistake with the DI watching his every move.
Half an hour later Coates had covered nearly a full hour of the sense logs. ‘I don’t get it,’ Coates bit his bottom lip and looked up at the DI. ‘Unless he’s in there having a meal he should have come out by now.’
‘Expand the perimeter by fifty metres,’ the DI said.
Coates did so and started again, ignoring any matches he had already discounted. Then the sense logs detected someone in an alleyway at the back of the restaurant. The strips weren’t able to get a positive match and when Coates brought up the footage they watched as a man climbed out of a window at the back of a building adjacent to the restaurant. He had a raincoat on with the hood raised. Coates panned the viewpoint around to look at the man’s face. He was wearing a pair of reflective sunglasses but there was no mistaking it was Jamie Keller.