Get clues first:
$ grep "CLUE" crimescene
From Crime Scene Report #028615332953
:
CLUE: Found a wallet believed to belong to the killer: no ID, just loose change, and membership cards for AAA, Delta SkyMiles, the local library, and the Museum of Bash History. The cards are totally untraceable and have no name, for some reason.
Use Ruby to find list of people with memberships to all of those.
Dir.chdir('./memberships')
Dir.open(Dir.pwd).each do |filename|
next if File.directory? filename
file = File.open(filename)
instance_variable_set(:"@#{filename.downcase}", file.read.split("\n"))
end
@aaa & @delta_skymiles & @terminal_city_library & @museum_of_bash_history
This yields the following list:
- Deron Estanguet
- Stephanie Adlington
- Aldo Nicolas
- Sonata Raif
- Jeremy Bowers
- Didier Munoz
- Nikolaus Milatz
- Marina Murphy
- Krystian Pen
- Mary Tomashova
- Kelly Kulish
- Matt Waite
- Monika Hwang
- Emma Wei
- Liangliang Miller
- Jacqui Maher
- Jamila Rodhe
- Andrei Masna
- Tamara Cafaro
- Brian Boyer
- Dalibor Vidal
- Mike Bostock
- Augustin Lozano
From Crime Scene Report #912464709392
:
CLUE: Footage from an ATM security camera is blurry but shows that the perpetrator is a tall male, at least 6'.
Using ./people
, we can elimnate females from that list.
- Deron Estanguet
- Aldo Nicolas
- Jeremy Bowers
- Didier Munoz
- Nikolaus Milatz
- Krystian Pen
- Matt Waite
- Liangliang Miller
- Andrei Masna
- Brian Boyer
- Dalibor Vidal
- Mike Bostock
- Augustin Lozano
From Crime Scene Report #575776622208
:
CLUE: Questioned the barista at the local coffee shop. He said a woman left right before they heard the shots. The name on her latte was Annabel, she had blond spiky hair and a New Zealand accent.
In ./people
, search for Annabel.
$ grep "Annabel" people
There are two females listed. Review both interviews. From interview-699607
:
Interviewed Ms. Church at 2:04 pm. Witness stated that she did not see anyone she could identify as the shooter, that she ran away as soon as the shots were fired.
However, she reports seeing the car that fled the scene. Describes it as a blue Honda, with a license plate that starts with "L337" and ends with "9"
At this point, we merely need to check our culled membership list from above against the DMV records. Anyone that drives a Honda, a blue car, or a car with a license plate that matches the partial is a suspect.
- Deron Estanguet -- Red Nissan, no partial match, too short
- Aldo Nicolas -- Pink Cadillac, no partial match, too short
- Jeremy Bowers -- Blue Honda, partial match, close in height
- Didier Munoz -- White Fiat, no partial match, too short
- Nikolaus Milatz -- Yellow BMW, no partial match, close in height
- Krystian Pen -- Pink Volvo, no partial match, too short
- Matt Waite -- Blue Toyota, partial match, close in height
- Liangliang Miller -- White Hyundai, no partial match, too short
- Andrei Masna -- Teal Mazda, no partial match, too short
- Brian Boyer -- Blue Jaguar, partial match, probably too tall
- Dalibor Vidal -- Blue Jeep, no partial match, somewhat close in height
- Mike Bostock -- Teal Honda, partial match, somewhat close in height
- Augustin Lozano -- Red Toyota, no partial match, somewhat close in height
Our reasonable suspect list now looks like this:
- Jeremy Bowers -- Blue Honda, partial match, close in height
- Matt Waite -- Blue Toyota, partial match, close in height
- Andrei Masna -- Teal Mazda, no partial match, too short
- Brian Boyer -- Blue Jaguar, partial match, probably too tall
- Dalibor Vidal -- Blue Jeep, no partial match, somewhat close in height
- Mike Bostock -- Teal Honda, partial match, somewhat close in height
After reviewing interviews, Jeremy Bowers sticks out. He's missing, and everyone else checks out after more research. This seems like our guy.
echo "Jeremy Bowers" | $(command -v md5 || command -v md5sum) | grep -qif /dev/stdin solution && echo CORRECT\! GREAT WORK, GUMSHOE. || echo SORRY, TRY AGAIN.
CORRECT! GREAT WORK, GUMSHOE.
Solved!