Added some documentation to help readability.