be fine.” She exhaled and nodded. “He’ll be fine. Now, Paige, go find what you need to stop this guy, and if you need our help, just ask.”
I’d hacked into this credit card company’s files before—the last time being only a few weeks ago when Lucas needed information for a case. They hadn’t changed any of their security parameters since then, so I popped into the system easily. Within twenty minutes I had Weber’s credit card transaction records. Nothing on them indicated that he’d visited any of the target cities in the last six months. That, however, might only mean that he was smart enough not to make hotel reservations or dinner purchases with his credit card. Or he might have used a different card.
Lucas slipped into the study as I finished. When I told him I’d struck out, he decided to make some phone calls and see whether we could find another way to place Weber out of town on the days of the attacks. These calls were best made from a pay phone, so he took Adam and left. Did he really need Adam to chauffeur him around Santa Cruz? No, but if he’d left him, I’d have spent the next hour with Adam breathing down my neck as I tried to crack Weber’s data files. So Lucas took him along.
It took me about thirty minutes to determine the encryption program Weber had used on his files. Once I knew what he’d used, I downloaded a cracking program and translated them into text. For the hour I waded through the boring detritus of an average life: e-mail jokes, online dating postings, bill payment confirmations, Christmas card address labels, and a hundred other mundane bits of data raised to the value of top-secret information by a paranoid mind and a shareware encryption program.
At ten-fifty, my watch alarm went off. Time to check in with Elena. I phoned her, talked to Savannah, then returned to my work. The rest of the files on the disk appeared to be work-related. Like most professionals, Weber’s day didn’t end when the clock struck five, and for contract employees, the drive to translate that contract into a full-time job often means bringing work home to impress the company with your throughput. He had plenty of data files on his computer, and a folder filled with programs in SAS, COBOL, and RPG. The mind-numbing side of programming: data manipulation and extraction.
I looked at the lists of data files. There were over a hundred on the disk and I really didn’t want to skim through each one. Yet I couldn’t just put them aside based on assumptions about the content. So I whipped up a simple program to open each file and write a random sampling of the data into a single new file. Then I scanned the new file. Most of it looked like financial data, not surprising given that Weber worked in the accounting division of a Silicon Valley company. Then, a third of the way down the file, I found this:
Tracy Edith McIntyre
03/12/86
shaman
NY5N34414
Race Mark Trenton
11/02/88
sorcerer
YY8N27453
Morgan Anita Lui-Delancy
23/01/85
half-demon
NY6Y18923
Now, Silicon Valley companies may employ some pretty young people, and some pretty strange people, but I don’t think teenage supernaturals made up a significant proportion of their staff. I found two other similar lists farther down. Three files with information on the teenage children of supernaturals. Three Cabals had been the victims of a killer targeting their youth. Definitely not a coincidence.
My sampling program had pulled off only the first eighty characters in each record, but the information in those records extended well over that. As with most data files, though, all you saw were strings of numbers and Y/N indicators, meaningless without a context. To read and understand these files, you needed a program that extracted the data using a record key.
Ten minutes later, I’d found the program that read the Cabal files. I ran it, then opened the file it created.
Criteria A: age<17; living with parent(s)= N; current location city NOT blank, current location country = USA
ID
Name
Age
Cabal
P. Race
State
01-645-1
Holden Wyngaard
16
Cortez
shaman
LA
01-398-04
Max Diego
14
Cortez
Vodoun
NY
01-452-1
Dana MacArthur
15
Cortez
hd/witch
GA
02-0598-3
Colby Washington
13
Nast
half-demon
SC
02-1232-3
Brandy Moya
14
Nast
half-demon
AB
02-1378-2
Sarah Dermack
15
Nast
necro
TN
03-083-2
Michael Shane
16
StC
half-demon
CA
03-601-2
Ian Villani
14
StC
shaman
NY
Criteria B: living with parent(s) = Y; parental marital status IN [D,W,S]; employee is custodial parent = Y; parental occupation = bodyguard, department = CEO
ID
Name
Age
Cabal
P. Marital Stat.
01-821-1
Jacob Sorenson
16
Cortez
Widowed
03-987-1
Reese Tettington
14
St. Cloud
Divorced
At my elbow was a piece of paper with three names on it—the names of the teens killed from the other Cabals, the only information we had about them. I’d already memorized that list, but still looked over now, needing