BTW, the patch is completely untested; if it fails to compile, hopefully it won't be hard to fix it up.