remove old workarounds, restructure new ones.