added a bunch of commentary