The code is largely uncommented. These are required comments: 1. Describe what each function does 2. Describe the input and output of each function 3. Any non-trivial code should have at least a one-line comment describing what it will do