Solved once with Algorithms, it's still sitting here solved in fact.