UNSTABLE: need to debug all this hacking...