with some added comments