more thorough comments