+ assert, gc clean up