Major rewrite*.