Consider adding some comments to this file to make understanding it easier. -