commenting all of the code