new version with comments

This reverts commit 541590b3ac63a42fd3b098f7eb645ff5a91b6f02.