Clean more carefully and implement hiding and unhiding.