Clean up and documented.