There's gotta be a LINQier way to do this, but whatever :)