Bug 907013 - Rewrite everything.