This is worthy of its own thread.