Clean up and explain better.