121594.fb2
Heads turned as Taya walked into the public house, folding her wings close to get through the door. She'd only snapped the keel shut when she'd retrieved it from the lictors; her harness straps were tied together and tucked out of the way.
Cristof was sitting at a table in the back. She took a moment to lock her wings upright, out of the way of other patrons, and walked over to him. The tips of her metal flight feathers brushed the cobwebs on the ceiling beams.
The exalted slouched in his chair, staring at a tall pint of ale. His pocket watch was open next to his drink, gently ticking. Taya glanced at its mother-of-pearl face. She was just on time. Filling out the paperwork to reclaim her wings had taken her longer than expected.
"Can we talk here?" she asked, turning a chair around and sitting down. She folded her arms over its back.
"In generalities." He reached forward and picked up the watch, closing it with care and slipping it into his vest pocket.
"All right." She gave him a level look. "What are the lictors doing now?"
"The sun will set in twenty minutes. They're already calling in the search and repair teams and covering the supply wagons." Cristof stopped as a serving woman walked up with a fresh pint of ale.
"First one's on the house for rescue workers," the woman said in a brisk voice.
"I didn't do much," Taya confessed, looking up.
"Every little bit counts." The woman nodded and walked off. Taya stared at the ale, feeling guilty.
If she hadn't gotten herself arrested, maybe she could have done something useful.
"They'll wait out the night, then start working again as soon as there's light," Cristof continued. "Almost everyone was evacuated out of the Tower by wing. I understand a few lictors have volunteered to stay up there as a skeleton crew."
Taya thought of the cold, dark mountain and of mangled body parts, and closed her eyes. Ceaseless construction had driven the wolves off Ondinium Mountain, but smaller scavengers would be out as soon as the sun set, picking at any flesh they found among the rocks.
At any pieces of Alister and Octavus that hadn't been retrieved.
Her stomach twisted and she opened her eyes, grabbing the ale. Liquid spilled out of her mouth as she drank, seeking to drive away the gruesome mental image.
She set the glass down and wiped her mouth, shuddering.
"Do you know any Torn Cards?" she demanded.
"None that haven't already been arrested." Cristof shifted in his seat. "Tell me what you know. What Alister knew."
Taya recounted the morning's conversation, pausing every few sentences to swallow hard. She wrestled with her conscience over mentioning the Clockwork Heart program. She'd all but promised not to say anything about it, but if she kept it a secret now, Alister's murderers might go free. At last she sketched it out in as few words as possible, whispering to keep the other patrons from overhearing.
She didn't mention the end of that conversation at all, her voice trailing off as she grabbed the pint of ale again.
I should have kissed him
, she thought with anguish.
I should have taken the chance.
While she was drinking, Cristof pulled off his spectacles and pinched the bridge of his nose.
"All right. I know Alister was up early to look at a new engine. He was back in his office by the time you arrived. He left nearly three hours after you spoke to him. What was he doing in that interval, and where was he going when he left? Did he tell anyone about your suspicions? If he said something indiscreet in front of a Torn Card spy, he might have triggered a reaction that got him killed."
"But there wouldn't have been enough time for a spy to plant a bomb in his clock," Taya protested.
"It wouldn't take that long, if the spy knew what he was doing and Alister were out of his office." Cristof shook his head. "But we don't know for certain if there was a bomb in the clock. It's just supposition." Cristof put his glasses back on. "And we don't know for certain the explosion was meant for him, either. The lictors believe the first attack was aimed at Caster, and this one may have been, too. That's the angle they'll investigate first. If the searchers have found any parts of the bomb, it would help explain what happened, but thanks to my arrest, I don't know what they may have discovered."
"Lady." Taya rubbed her face, wondering how he could talk about the attack so calmly. Every time she paused to think about what had happened, about who she'd lost…
"Why were Alister and Caster together?" Cristof continued, watching her. "Was it coincidence, or did it have something to do with what you said about me? Or was it something else? Were they talking about Council business of some kind?"
"I don't know." Taya felt daunted by all his questions. "How do we find out?"
"Talking to the clerks who were evacuated would help, but I don't have any access to them anymore. I'd like to search Alister's and Caster's offices in Oporphyr, but there's no way up." He shook his head. "We can't talk to Viera, yet."
"Poor Viera." Taya's heart ached. She'd only lost a hope. Viera had lost a husband. "I should go visit her."
"Not tonight. I haven't had a chance to see her, but the lictors told me she was in hysterics."
"Will she be all right?" Taya asked.
Cristof leaned forward in his chair and wrapped a hand around the base of his glass.
"She loved Caster," he said, voice low. "He was twenty-five years older than she was and Alister and I tried to discourage her, but she married him anyway, and he made her happy. We were arrogant idiots who thought we knew what would be right for her. I'm glad she didn't listen to us." He paused, tilting the glass back and forth. "I don't know what she'll do without him," he finished, and took a drink. Taya glanced down at the rings of condensation on the table, pretending she didn't see him wipe his eyes with his free hand.
Lady
, she thought, alarmed,
if he loses control, I will, too, and we'll both be sitting here crying like babies.
But Cristof took a deep breath, slamming his glass down on the table with a bang.
"My brother thought Caster was attacked because of the program he'd written?" he demanded.
"He suggested it, but I don't see why the Torn Cards would care about a program to predict happy marriages. The whole thing's silly, don't you think?"
"It's exactly the kind of program my brother would write. Alister wants everything to be just right, and he'll do whatever—" Cristof stopped and looked away. After a moment he continued, his voice rough. "Alister was an idealist. For him, things either worked perfectly or they didn't work at all."
"I thought you were the idealist."
"No." He looked back at her. "I know the world isn't perfect, and I don't think it can be. I just try to locate the worst problems and fix them. Alister would rather scrap the whole program and write a new one from scratch."
"Did someone break his heart once? Is that why he wrote the program?"
Cristof studied her a moment, then dropped his gaze to his ale. "Alister would never risk a broken heart. He preferred perfect flirtations to imperfect love. He wrote that program for our parents."
"But they—" she stopped. Cristof shrugged, his narrow shoulders slicing the air.
"We could talk to his programming team," he said, changing the subject. "Maybe one of them leaked information to the Torn Cards. I agree with you that it seems like a stretch. But they're probably the only suspects who are still available. Alister always stays up late at the University when he's working on a program."
A beat of silence followed his words. Taya looked down at her hands, and Cristof pushed his ale away.
"It's better than sitting here," he said abruptly, standing. "You don't have to come, if you don't want to."
"I'll come." She stood. People cleared a path for her as she led the way out, her wings scraping the ceiling again.
Night had fallen. Taya fastened the neck of her flight suit, grateful for its padded lining. Cristof buttoned up his coat and pulled up its collar. The winds had died down, but the night air had a bite.
We'll get snow in a few more weeks
, Taya guessed, looking up at the stars.
"You shouldn't walk around with your armature undone," Cristof said, breaking the moment of silence. "It isn't safe."
"I thought we might go someplace where I'd want to take it off." She looked down at the unfastened straps. "I guess not." She tugged them free and began running them through the buckles on her suit.
For another minute they stood in silence as she worked. Then Cristof shifted, his shoe scraping on the cobbled street.
"I apologize for shaking you," he said, his manner stiff.
"It's all right. You were mad. So was I."
"Even so." He turned, his sharp profile gleaming in the gaslight. "I never thought I'd raise a hand to a woman. I lost control."
"You were under a lot of stress." She tugged a shoulder buckle tight, feeling a twinge of guilt. "I'm sorry I hit you, too. I mean, I wouldn't have been sorry if you'd been the one who'd set the bomb, but since you're not…."
He nodded once, falling silent again. Taya had the distinct feeling that he wasn't satisfied, but she didn't know what else to say. Instead, she finished fastening the armature. Cristof began walking, and she fell into step beside him.
People bustled through the streets of Secundus on their way home from work, their coats wrapped around them and their bundles under their arms. Gaslights and lit storefronts kept the streets bright. The lights of Primus rose overhead until they melded with the stars, and the lights of Tertius swept out below, vanishing in the furnace-red glow of the smelting factory chimneys.
Taya glanced at Cristof. He looked unhappy, huddled in his greatcoat as they walked.
"What will the lictors do if they find out you're investigating your brother's death?" she asked, to distract him.
Cristof shrugged again.
"Threaten me. Throw me in prison for a few days. Fire me, if they get really upset."
"You don't sound too worried about it."
"I don't need the job. I have plenty of money from my inheritance, and the repair business is good."
"Why didn't you give up your inheritance when you turned your back on your caste?"
"It's my money," Cristof snapped. "My parents died long before I decided I'd had enough of Primus."
His constant defensiveness irritated her.
"So all you really did was take off your mask and change your clothes," she observed. "You still have your money and your title, and you're still part of the government."
"So?"
"So, it wasn't exactly a heroic rebellion."
Cristof's laugh was short and bitter.
"You've got me confused with somebody else, Taya. I'm not a hero or a rebel."
"Then why are you doing this to yourself?" She gestured to his short hair and mercantile clothing.
"Alister never understood, either."
Taya took a deep breath, reminding herself that Cristof was under pressure, too. Diplomacy. She moderated her tone.
"Then maybe you need to explain it better."
They walked another block before he started to speak, pausing often, as if to choose his words with care.
"There are lower-castes who think exalteds aren't human. They think we're hiding some kind of grotesque deformity behind our masks and our robes, or that we're really spirits or demons. But the only thing exalteds are hiding is that they are human."
They turned down the broad, tree-lined street that led to the University's towering iron gates. Dry red and gold leaves rustled and blew around them, casting ghostly shadows in the light of the street lamps.
"The Lady permits us an eternity of rebirth to refine our base souls, and being born as exalteds is supposed to prove that we're close to the final forging. But the reality is that exalteds are as imperfect as anyone else and just as liable to shatter under pressure.
"My father beat my mother to death and killed himself. The caste covered it up. It wouldn't be in our best interest to admit that exalteds can go mad, you see. The lower castes might lose faith in our ability to rule the city." Cristof's voice dripped venom. "So we lie to them."
"Nobody would want to talk about something that terrible," Taya murmured. "It wouldn't matter what caste it had happened in."
"If you never talk about a problem, how can you prevent it?" Cristof stopped at the University gates and pointed to the motto inscribed in iron over the arch.
Knowledge is Power
"Exalteds worship knowledge. We feed every scrap of data we can collect into the Great Engine — unless it's about ourselves. We don't want to know the truth about ourselves. My father's friends should have realized something was wrong. They should have stopped him long before he killed my mother. But everybody turned a blind eye to what was happening. They didn't want to see his wife's bruises or listen to his sons, who were asking them to do something, because if they did, they'd have to admit their caste wasn't perfect."
"So you left Primus because you were angry," Taya summarized, feeling sad. "Why don't you just say so?"
Cristof tightened his lips, drawing away.
"You think it's trivial."
"I didn't say that. You lost your parents. I was heartbroken when my mother died. She got the coughing sickness and the doctors couldn't do anything about it. I know a parent's death isn't trivial."
"It isn't about my parents." Cristof jerked around and began walking again, leading the way through the university commons. "I minded my caste for eight years after they died, finishing school and taking care of Alister. But I saw it happening, over and over again. Lies and cover-ups and pretense. Exalteds will do anything to keep from admitting they're as flawed as the lower castes. Finally I decided I'd be more useful repairing clocks than pretending to be perfect. Alister was already here at the University with a shining future ahead of him, so I left."
"Was your brother angry when you went?"
"Of course he was." Cristof's expression was blank. "I wasn't his ideal older brother anymore. But he got over it. Maybe he managed to reclassify me as the ideal exile. I don't know. But he started talking to me again, and he listened when I told him what was wrong with Ondinium. When he was named decatur last year, he told me he was going to make a difference. Lady." He raked his hand through his short black hair. "A marriage program. Some difference."
"He meant well," Taya said, hurrying to catch up with Cristof's long strides. "You dealt with your parents’ deaths by running away. Alister dealt with them by writing a program to keep it from happening again. I think a lot of people would say his solution was more useful than yours."
"I wouldn't." Cristof turned to walk up the broad marble steps of one of the buildings. "A clockwork heart can't replace the real thing." He pushed open the giant carved wooden doors and walked inside.
Taya had to duck through the doorway to enter, but the vaulted ceilings inside the building were high enough to accommodate her wings and two span more. She'd visited the Science and Technology building before, receiving and delivering messages, but never at night. Now the halls were dark, the industrially themed frescos on the ceiling hidden in shadow. A low, steady chuffing and rattling from the bank of steam engines in the subbasement level echoed through the corridors.
Her courier duties usually took her upstairs to the offices, but Cristof headed down a short flight of steps to the basement labs. The sound of the engines grew louder, but not loud enough to drown out the argument going on in the analytical engine lab.
" — undefined terms in Cabisi would make it absolutely impossible—"
"We know their programs work!"
"But they're not trying to replicate their natural—"
"It doesn't matter anyway; nobody's going to learn—"
"Now, wait: that's exactly the kind of narrow—"
Taya and Cristof turned the corner.
Three men and two women were sitting around a cluttered room, ale flagons and beer jugs scattered around them. A board of bread and sausage shared table space with a variety of mechanical devices and tools, and a huge analytical engine spanned the wall behind them, clicking and chattering. One of the women was feeding it a set of cards with one hand and holding a tankard in the other. All of the programmers bore the spiral castemark of a dedicate over their right cheekbones.
" — we won't know until we get a Cabisi programmer in here to try it out," one of the young men was saying with finality. The others burst into argument.
"If you break that engine while you're… celebrating… you'll be blinded and sent into exile," Cristof said, in a cold tone.
"They wouldn't dare," the woman at the table said, turning. "We're too—" She stopped, staring at the two of them. "Oh, scrap."
The others turned, then scrambled to their feet, making awkward bows. Taya expected Cristof to shout at them the way he'd shouted at her, but instead he stalked forward, his lip curled with disgust as he inspected the mess around him.
"I assume you have some excuse for this?"
"I–It's a wake, exalted," one of the men stammered. Cristof froze.
"It's for Exalted Forlore," another added.
"You must be his brother," said the third man, looking up. "He told us about you. There can't be more than one exalted who goes bare-faced in public."
"This is Exalted Cristof Forlore," Taya hurried to say, before Cristof could respond with something unpleasant. "And I'm Taya Icarus. We're investigating Alister Forlore's death, and we need your help. There are things about his programming work that we don't understand, and we hoped you might be able to explain it to us."
The five programmers relaxed.
"You think his work has something to do with the accident?" one asked.
"Maybe." Taya left the answer hanging.
"Well, we can try," another man said, with an air of condescension. "What do you want to know?"
"How about your names?" Taya asked, forcing herself to give him a friendly smile despite the emotional turmoil she was feeling. "You were… you were Alister's friends, weren't you?"
"Yes, ma'am. We're his programming team." The man who'd recognized Cristof held out a hand to her. He was handsome in a conventional way, with brown hair and blue eyes. "I'm Kyle. The big guy over there is Lars, the one with the scary beard is Victor, the skinny one is Emelie, and the tall one is Isobel."
Taya greeted them all, shaking hands. Standing to one side, his hands in his pockets, Cristof seemed disinclined to speak. She was glad of it. She needed to do something useful to keep her mind off everything that had happened.
"I'm glad to meet you. I understand you've just finished an important program for the Council?"
"Yeah, although now that Alister's gone, who knows if it'll ever get run through the mill?" Victor grumbled, dropping back into his chair. He was pale and thin, with a bushy black beard and moustache that did, indeed, make him look a bit scary. "That's why we're running it here tonight."
Taya thought about Victor's use of Alister's first name. It would have been impossible for the exalted to work with a team while he was wearing a mask and robes. He must have trusted them with his first name and bare face.
Good. That would make this easier.
"It's sort of a commemorative voyage. We wanted to run it through once, in case the Council rejects it," Isobel added, turning back to the machine. She was still holding a box of punch cards. Her height and blond hair suggested Demican blood, although her dedicate castemark meant she had been born in the city.
"Is it his romance program?" Taya asked. "Are you running any names through it?"
"All of ours." Isobel flashed her a quick smile. "We wanted to see if any of us are romantically compatible."
"What happens if the program says you are?"
"The couple goes on a date, and we test the program's validity," Lars said. He turned to the table. "Can I get you anything, icarus? Exalted?"
"I'll have some of that beer, to toast Alister," Taya said, swallowing a sudden lump in her throat. "Since this is a wake."
"Refills all around," Kyle commanded. Cups were thrust forward. Taya was surprised when Cristof stepped up, his eyes hooded, and took a tankard.
"Will you make the toast, exalted?" Isobel asked, turning to him.
Cristof hesitated, then nodded. For a moment he stood silently, then lifted the tankard.
"To my brother, whose work I'll do my best to see preserved."
With a murmur of thanks, the group touched cups and flagons and drank.
"Can you do that?" Kyle asked, looking at Cristof with new interest. "Your brother told us you'd rejected your caste."
"I can try."
"Well, it'd be great not to lose a whole year of programming." Kyle tipped his cup toward the clicking analytical engine. "Clockwork Heart was Alister's obsession. Even when the rest of us went home, he'd be here, working away, running tests, trying new approaches. He pretty much lived in this room for several months."
"He was the best of us," Victor said heavily, pouring himself more wine. Before Taya could protest, he'd refilled her mug, sloshing some over her hand. "No one'll ever punch code the way he did."
"On the Clockwork Heart program?" Taya asked.
"On any of ‘em. Lady knows what'll happen if something he wrote ever needs to be modified. It'll probably take the whole team to figure out what he did."
"What other programs did he work on?" Cristof inquired, finishing a long swallow. Taya expected him to wince at the flavor, but he didn't seem to notice.
I guess he really has lived a long time on Tertius.
"Lots of things."
"Top-secret things."
"I heard he was fourth programmer on Labyrinth," Emelie said.
"Labyrinth Code was before his time," Lars objected.
"No, they brought him in for it," Victor asserted.
"Not a chance."
"I'm telling you, he worked on it."
"You don't know what you're talking about."
Cristof picked up one of the jugs and refilled everyone's drink as the argument continued. Taya was surprised by the amiable gesture until she observed that he didn't refill his own flagon. He wanted them drunk.
"Didn't he work on Project Refinery, too?" Isobel asked, giving Cristof a distracted nod as the exalted topped off her tankard.
"Oh, yeah," Kyle said. "He was second programmer on that one."
"And he got the job because of his work on Labyrinth Code," Victor insisted.
"What's—" Taya started, then caught Cristof's warning look and let the question die on her lips. The programmers didn't notice her, anyway, caught up in their argument. Then the analytical engine began to click, and Isobel flinched and began feeding it cards again.
"How much longer is that going to take?" Lars complained. "We've been running it all day."
"Not much longer. We're almost down to the bottom," Isobel said, hoisting the box as evidence.
"Good. Here's to us, beautiful." Lars lifted his glass and winked. She snorted, unimpressed, and went back to work, sliding cards into the machine.
"Why did the Council permit Alister to work on something as ridiculous as Clockwork Heart after he'd spent so much time on important programs?" Cristof asked.
"It's not ridiculous," Isobel objected.
"Oh, they kept him working on their projects, too, but Heart was always part of the deal," Kyle explained. "Alister agreed to work on the Council's programs as long as he was given equal time to work on his own. Tells you something about how much they needed him that they let him cut the deal."
"He charmed them, just like he charmed everyone," Emelie said with irritation. "Alister always got what he wanted."
"Hey, don't complain," Lars protested. "We're lucky he wanted us, or we'd still be punching accounting programs for the slagging Bank of Ondinium."
A chorus of groans greeted that comment.
"Besides," Isobel commented, "if he got everything he wanted, it wasn't entirely his fault." She gave Emelie an sly look. "Just because he asked didn't mean you had to say ‘yes.’"
Taya felt her heart skip a beat. Emelie turned red and leaped to her feet, beer spilling on the ground.
"I thought he was—"
"Oh, please, you can't tell me—"
"What other programs was he working on?" Cristof repeated, raising his voice and cutting through the imminent argument. He turned, and Taya felt him study her red face a moment before addressing Victor. "What program would be worth killing him over?"
A silence fell over the room. Taya caught her breath and glowered at Emelie. The programmer was dressed in casual clothes, with her long black hair caught back but slipping from its pins. She wasn't as petite as Taya, but she was thinner, without an icarus's wiry muscles. She was good-looking enough, in kind of a careless, bookwormy way. Taya had a hard time imagining Alister being interested in her.
Of course, Taya couldn't figure out why Alister had been interested in her, either. Pressure started to build in her throat and she shook her head, denying it. Not now.
"Do you think that's what happened?" Lars asked, at last. "He was murdered?"
"Forgefire, Lars! He was killed by a bomb." Victor scowled. "What did you think ‘bomb’ meant? Natural causes?"
"Well, it might have been random…. "Lars looked at the others for support.
"It was murder," Cristof said, tersely. "It might have been aimed at him."
"Oh." The big programmer took another drink, subdued.
"He wasn't working on anything unusual," Victor said, slumping in his chair. "Encryption, decryption. Some modifications to Refinery."
"What's wrong with Refinery?" Cristof asked.
"Well, Decatur Neuillan slipped past it, so the Council asked Alister to look it over, figure out what it missed, and patch the holes in the algorithm."
The loyalty test, Taya realized. That's what Refinery was. It was the name of Ondinium's loyalty program.
"What holes?" Emelie sounded bitter. "That program was flawless. Neuillan just knew how to beat it. Alister told him."
"What?"
"Not a chance!"
"Alister would never do that!"
"Well, not in so many words," Emelie hedged. "But they were friends, or at least Alister thought they were. He told me he was afraid he might have let too much slip, that Neuillan might have been able to figure out from what Alister had said to him what kinds of answers would trigger the program to flag a profile."
"I don't believe that," Cristof objected, the lines around his mouth deepening as he frowned. "Neuillan was one of our guardians when we were orphaned. He was a good friend, but Alister wouldn't have compromised Ondinium's safety for him."
"He didn't do it on purpose," Emelie protested, looking around the room. "You know how much Alister liked to brag. Even if he wasn't supposed to talk about something, he'd still drop hints or tell you some little secret to make you feel special. That's how he made friends so easily. Everyone felt like he was trusting them with his confidences, and that made them trust him back."
"You're saying he was manipulative." Taya felt cold. Was that why Alister had so easily entrusted her with the "secret" of his Clockwork Heart program?
"No, no," Lars protested. "It wasn't like that. Sure, he tried to make friends with everyone he met, but there's nothing wrong with that. He wasn't manipulative. He was proud of his work, but we all are. Emelie's just got bent edges because he dumped her."
"He didn't dump me! I dumped him."
"Either way, it's coloring your perceptions. I liked Alister."
"We all did," Kyle agreed.
"He told me he thought Neuillan was his fault," Emelie repeated. Her tone was sullen. "He said he felt bad about it."
"Maybe someone else slipped through the program and was afraid that if Alister fixed it, he'd get caught," Victor suggested. "So he killed him."
"Doesn't have to be a ‘he,'" Isobel pointed out.
"Women don't use bombs." Victor scratched his beard. "Women use knives. Or poison."
"I'd use a bomb!" Isobel sounded indignant. "Or don't you think I could figure out how to build one?"
"Oh, bombs are easy to build," Victor said. Isobel scowled. "But they're not clean enough for a woman. Men are slobs. We don't care if we get the walls dirty."
"Please—" Taya felt sick.
"Oh. Lady. Sorry." Victor slumped in his chair again. "Poor Alister. Have we helped you catch his killers yet?"
"It helps to know that he was working on something more important than a marriage program." Cristof's voice was strained. He reached into his coat pocket and pulled out the stack of cards Taya had seen the night before. "What do you know about these? Somebody smuggled them out of the Engine Room."
"Why do you still have those?" Taya asked. Emelie's comments about Alister had depressed her, and she was feeling contrary. "I thought you were suspended."
"These cards aren't officially linked to the investigation of Alister's death." Cristof narrowed his eyes. "And if it turns out they are… well, that wouldn't be my fault."
"Wait — what do you mean by ‘suspended'? Are you working with the lictors or not?" Lars rumbled, looking suspicious.
"I'm working with the lictors and I'm investigating my brother's murder." Cristof turned, his angular frame diminished by Lars’ girth. "But not at the same time."
"Are we going to get into trouble if we help you?"
"I'll try to avoid it. I can't guarantee anything."
The five looked at each other.
"Slag it," Victor said at last. "Alister's his brother. A man has to avenge his brother."
"Yeah."
"You're right."
"I would."
"Works for me."
"He spoke highly of you, you know," Kyle said, turning and taking the cards. The other four crowded around, and they passed the bundle back and forth. "He said you were logical and precise, and if the Council had brains instead of beads, it would have made you decatur, instead of him."
"That's not the impression he gave when he spoke to me," Cristof muttered.
"Really?" Kyle gave the exalted a long look over the bowed heads of his friends. "He told us he was modeling one of his most important programs after you."
Cristof made an angry sound and Taya looked at him, surprised. Kyle blinked, then looked back down at the cards.
"Anyway, if you'll give us some time, we need to skim through the perfs… the perforations, the punches. I have a pretty good idea of what this is, but we'll need to study it a little longer to be sure."
The exalted nodded and turned, stalking off to stand alone at the other end of the room.
Taya waited a moment, then joined him. She wanted to apologize for letting his status on the investigation slip, but the words died on her lips.
Cristof stood with his fists jammed into his coat pockets, his shoulders high and his eyes fixed on the metal dance of the analytical engine's pistons and gears.
He looked so miserable that she reached out and touched his shoulder.
"It would help if you just let yourself cry," she murmured.
He jerked his shoulder away.
"It wouldn't help anything."
"It would help you." She swallowed, her own grief too close for comfort. "You shouldn't hide your feelings. I thought the whole idea was that you didn't want to wear a mask anymore."
His breath hissed as he turned his back more firmly on her.
"I think it's nice that Alister talked about you to his friends," she said, trying one last time to reach him. "He told me about you, too. He said he loved you and that he wished you realized that. And he insisted he was going to talk to you before he talked to the lictors because he couldn't believe you were a terrorist. He said it had to be a mistake."
"Stop defending him," Cristof said, his voice harsh. "You heard what that skinny girl said. Alister was just worming his way into your confidence, the way he always did."
Taya drew back, stung. She'd been making herself sick thinking the same thing, but it was different to hear the words from somebody else.
"You don't know that," she argued, trying to convince herself as much as Cristof. She wiped her face, feeling a tear trickle down cheek. "That's a terrible thing to say. Alistser was charming and kind and sincere."
Cristof turned. She dried her face on her flight-suit sleeve.
"Don't." His voice was severe. "Don't start crying, icarus."
"I can't help it." She sniffed, tears streaming. "I can't believe he's gone. And Octavus, too. I lost two new friends in one day."
"Hey… do you need any help over there?" Lars asked, looking across the room at them. He sounded concerned.
"Just find out what's on the damn cards," Cristof snapped.
Taya swallowed, angry at herself for breaking down in front of strangers. She'd hoped to make it back home before the tears started.
Cristof dug into a pocket and thrust a handkerchief into her hands, then pulled off his glasses. "Spirits! Would you please stop?"
She looked up. Her tears had set him off. Just what she'd been afraid of, back in the bar. She wiped her eyes and handed back his handkerchief. He grabbed it.
"It's wet," he complained.
She gave a half-laugh, half-sob.
"Then you should have started first," she said.
"I have no intention of starting at all!" He sounded angry as he scrubbed at his face.
She tugged the handkerchief out of his hands again and blew her nose in it.
"Grieving's part of being human, you know." She looked up at him and took a shuddering breath, trying to get herself under control. "I bet even exalteds cry when they lose a brother."
He ran his hands over his face, his spectacles dangling from his fingertips, and walked away. Taya pressed her knuckles against her mouth. She'd upset him even more. Hot tears streamed down her cheeks — tears for Alister, for Cristof, and for herself. Ridiculously, she wished Alister were with her so that she could lean on him while she cried. Instead she crouched, her metal feathers scraping the floor as she buried her head in her hands and let her grief wrack her.
A few minutes later Cristof dropped to one knee in front of her. He pushed her hair away from her face. His fingers were cold on her hot forehead.
"Stop crying. Alister wouldn't want you to cry for him."
She looked up, sniffing, and wiped her nose on his handkerchief. He'd put his spectacles back on, although his eyes were red.
"His team knows that. Alister would have appreciated their wake." Cristof wiped a tear off her cheek. He looked weary. "He never had any time for grief."
"Not ever?" Taya asked, ducking her face from his hand and rubbing her eyes.
"I never saw him cry, after our parents’ funeral." Cristof studied her. "That's better."
"No, it's not." She took a deep breath, steadying herself, and looked over his shoulder at the programmers. The five of them were studiously ignoring them. "Do you think he was manipulative?"
"Spirits." Cristof pressed his lips together a moment, then sighed. "What do you mean by manipulative? He liked smart, talented women. It wouldn't surprise me if he said things to impress you. I expect most men do. Is that manipulative or just natural?"
"Thank you." Taya forced a smile. "I didn't… I didn't like the way Emelie talked about him."
"Neither did I." He stood, reached down, paused, and then opened his hand. "Stand up."
She took it, grateful for the contact. His hand was cold but steady, his fingers thinner and harder than his brother's. She let him pull her to her feet.
"Okay." She squeezed his hand, then wiped her face one last time. "I think I'm all right now."
"Good."
She took a moment to adjust her flight suit, shoving his handkerchief into her pocket. Then she straightened her shoulders and walked back to the programmers. He followed.
"Is everything okay?" Kyle asked, giving her a quick glance.
"Yes. Just — just delayed reaction." She bit her lip and looked down at the punch cards lined up on the table. "So, what are they?"
"Well, they're obviously Great Engine cards." Kyle made room for her and Cristof. "You can tell because they're wider and longer than normal cards and made out of tin instead of heavy paper. The numbers on the edge identify the card's order in the program. You've got twenty-five cards out of a deck of a hundred here."
"Is that a lot? A hundred?"
"No. In fact, it's a very small program, for the Engine."
"What good would part of a program do anybody?" Cristof asked, pushing up his glasses as he leaned over the table to study the numbers. "What's the code in front of the number?"
"It tells the operator which program the card belongs to," Victor said. "After you've dropped a box of cards the first time, you realize how important it is to label them correctly."
"OCAE stands for Oporphyr Council Analytical Engine, the official name of the Great Engine," Isobel explained.
"SA stands for Security Access," Victor added. "Also known as Labyrinth Code."
Kyle tapped the numbers that followed. "Version three, copy two, card twelve of one hundred. We're not sure what these numbers are, but we think it's part of a randomizing formula."
"The Labyrinth Code is the Engine's security program, right?" Taya picked up one of the cards, examining its block of punches with wonder. She'd never seen the Great Engine or one of its cards before. "So if somebody got this, they could use the Engine?"
"Well, they'd need seventy-five more cards, first," Lars said. "My guess is that whoever stole these couldn't get the rest. A deck of tin cards gets heavy fast, so they're probably stored in four boxes of twenty-five each, and your thief only had a chance to grab one."
"It'd be easier to smuggle the program out one box at a time," Victor added. "He might have been planning to go back for the rest later."
"Since these cards are labeled as copy two, our guess is that they're part of the backup copy, which would be stored someplace on site in case one of the original cards got damaged," Emelie said. "A backup would be easier to steal than a working program. It could take months before anybody noticed a backup was missing."
Cristof straightened.
"How hard would it be to reconstruct the whole program if all you had were these twenty-five cards?"
The programmers looked at each other.
"Impossible," Kyle said at last. "It's called Labyrinth Code for a reason. Five different teams worked on it, each team under orders to create a code with no recognizable pattern. Then one high-security team assembled a metaprogram to govern each of the other five codes."
"People say it's impossible to write a program that's entirely random," Victor said, stroking his beard. "Humans aren't random creatures. But five teams trying to be random will create a program that's random enough for most purposes."
"But this set must include more than one team's work," Taya said. "I mean, if each team created equal programs, then each team would have twenty cards each, right?"
"If each part were exactly equal; but that may not be the case. Even if it is, it still leaves three teams’ subroutines unknown, and the metaprogram would have required some rewriting of the original code. In addition, if we're right about the last numbers on the cards, this code can be fed into the Engine in different orders, which would make it even harder to replicate." Lars saw that he was losing her. "Okay, let me explain. Labyrinth Code is fed into the Great Engine once a day and once a night to make sure nobody can just dance into the Engine Room and run a new program while nobody's looking. The first time unlocks the Engine, the second time locks it again. Each of the five subroutines in the Code needs to be run, but they can be run in different orders. So let's say you're trying to guess a code with five variables. One's a number, one's a letter, one's a color, one's the name of animal, and one's, uh—"
"A musical note," Isobel suggested.
"Right. Pretty tough to crack, right? Lots of possible answers for each variable. But the code is going to be even harder to crack if the order of the five variables is shuffled each day — one day the musical note is the first key, and the next day the animal is the first key, and so on."
Taya nodded.
"So even if your thief manages to get all hundred cards, meaning he knows the note and animal and color and whatever else I said, he's still got to know which order to run the cards in on any given day. There are five variables — the subroutines — which means twenty-five possible order permutations." Lars shook his head. "Your thief sneaks in some night when the guards aren't looking and runs the program to unlock the Engine. Let's say it takes half an hour to run the cards through, and that's a modest projection. He doesn't get the order right the first time, so he's got to run the cards through in the next configuration. If his luck is really rotten, it could take him seven and a half hours to hit the right order. Figure about four hours on average."
"That's a long time to be feeding cards into the Engine." Emelie folded her arms over her chest. "Someone's sure to notice the thief working — a technician, or a lictor, or somebody."
"And then, don't forget that the thief still has to run whatever program he broke into the Engine to use in the first place," Lars finished. "Which could take several more hours. And then another half hour to reset Labyrinth Code so nobody knows he was there."
"Assuming he cares," Victor added.
"He'd save time if he knew what order he needed to run the program in. Who would know?" Taya asked. The programmers shrugged, looking at each other.
"That's not our area," Kyle said.
"The chief technician, maybe," Lars ventured.
"I'd randomize the order," Isobel said. "Toss some dice each evening to decide. That would make it even harder to guess."
"Dice have six sides. The program only has five subroutines," Kyle pointed out.
"Okay, draw lots. You know what I mean."
"Would anyone on the Council know what order the cards should be run in?" Cristof asked.
"I don't see why," Lars replied. "Decaturs don't work on the mighty machine. Even Alister handed his programs over to the engineers when he was done. None of us have ever fed a program into the Great Engine ourselves."
"You said Alister helped write the Labyrinth Code," Taya said, looking at Emelie. The programmer nodded and Victor looked vindicated.
"That's what he told me. He was just starting University. He said one of his professors was so impressed by his portfolio that she brought him onto the project to do code clean-up, and in no time at all he was on one of the teams."
"Is this his piece of code?" Cristof asked.
"Hard to say." Kyle sat down and poured himself a fresh mug of beer. As if it were a signal, the rest of the programmers sorted themselves out and began refreshing their drinks. "Do you know anything about programming, exalted?"
"I don't need another lecture," Cristof said, with a touch of his usual acerbity. "A simple yes or no will suffice."
Kyle grinned.
"Just like a punch card, huh? But it's not that easy. See, this program was assembled in a relatively simple language, and you've only got twenty-five cards here. That doesn't provide much room for a programmer's personal style to show up."
"But it is possible to figure out who wrote a program?" Cristof asked.
"Theoretically. After a while, you get used to seeing other people's programming shortcuts, and we reuse parts of our old programs whenever we can," Lars explained. "So, given a long enough program, we could probably parse out the author, especially if it was someone we'd worked with before, like Alister. We've been dealing with his programming quirks for nearly a year now."
"The problem is," Kyle picked up the thread, "Labyrinth Code was designed to avoid anything predictable, which includes any single programmer's preferences. And not only that, but if Emelie and Victor are right, this would be one of Alister's early jobs, before he developed most of the routines he uses now."
"In other words, you don't know," Cristof summarized. "You could have just said that."
The programmers looked at each other with a long-suffering air.
Taya reached out and touched one of the cards. For all she knew, there was a little bit of Alister in them. That made her feel better, thinking that his work would live on until his next rebirth.
"If you ran these twenty-five cards through an analytical engine, would they do anything?" Cristof pursued.
"No." Kyle chuckled. "That's your short answer. Your long answer is that feeding in a partial program would probably crash the engine. And that leads to another question, which is, which analytical engine would you try it on? People use ‘analytical engine’ pretty casually to refer to a lot of different calculating machines, but there are only five true analytical engines in Ondinium: the Great Engine, this University engine, the engine in the Bank of Ondinium, the engine in the Council building — and that one's old, hardly more than a difference engine — and the prototype down the hall. So it's not as though someone could walk up and start feeding cards into any one of them. Access is very restricted. And these cards, of course, can only be run on the Great Engine. They're too big for the others."
"What about reading the cards themselves?" Cristof picked one up, looking blankly at its perforations. "How many people in the city can do that?"
"Maybe twenty of us."
"Are any of you twenty inclined to sell the Labyrinth Code to another nation?"
"And lose our job security? Not to mention our citizenship and eyesight? We remember what happened to Decatur Neuillan." Lars shook his head. "We're not idiots."
"Besides, Cabiel's the only other country with advanced analytical engines, and they use a completely different assembly language," Kyle added. "There aren't any foreign nations that could run Labyrinth Code on their own engines."
"But if a country like Alzana could use this code to sneak in and misprogram our Great Engine, it could do a lot of damage to us," Cristof speculated.
The programmers looked at each other.
"You know, exalted, people call the Great Engine the ‘Heart of Ondinium,’ but it's really not that important to our day-to-day survival," Lars said, politely. "Slagging up some of the programs would be inconvenient, and it might cause us problems over the long run, but if Alzana really wants to cripple Ondinium, it just has to blow up our refineries or poison our water reservoirs. This little bit of code doesn't make a big difference in the grand scheme of themes."
Cristof was undeterred. "What about the Torn Cards? Could they use it?"
"The Torn Cards want to destroy the Great Engine," Isobel said. "They wouldn't do that with a program. If they ever got access to the Engine Room, they'd just drop a few bombs between the gears."
"I see. Well, thank you." Cristof began gathering the cards back up. "If you think of anything that might help us figure out who… who killed my brother, would you please let me know? It would probably be fastest to send a message to Taya Icarus."
"Just drop a line through Dispatch, or tell any icarus that you need to talk to me," Taya said, nodding.
"We'll do that." One by one the programmers shook her hand, then ducked quick bows to Cristof.
"What now?" Taya asked, as they walked back down the marble steps to the campus plaza again. The autumn wind whipped dry leaves across the walkway. "Do you think the bomb was meant for Alister?"
"Now we know it's a possibility. But Caster's still the more likely target."
"When can we investigate him?"
"Not tonight." Cristof paused, taking off his glasses and wiping them on his coat front before putting them back on. "Tomorrow I'll visit Viera."
"Can I come?"
He looked at her, clearly not enchanted by the idea.
"I want to," Taya insisted. "It would be rude if I didn't offer my condolences."
"Oh, all right," he said gracelessly.
"Thank you." Taya took the lead this time, heading for the University flight dock. "When are you going to see her?"
"No earlier than noon. You won't have any problem getting off work?"
"Not if I tell them I'm working for an exalted. Everyone will be on search and rescue, anyway, so schedules are going to be flexible." She sighed, thinking again of the wreckage in the mountains. "I'll meet you at noon. Where?"
"In front of her estate."
"All right." She reached the dock, a metal tower that rose over the rooftops of the University buildings.
"Fly safely."
"I will." She swung herself up onto the rung ladder and began to climb, turning her face toward the moon.