cleanup, rework