nearly full cleanup, 99% works