Minor point -- try to keep the file to 80 columns.  Among other reasons, in the github PR review interface it goes right off the edge...