All of the comments here are overengineering. The code is the documentation