SR

It's probably easier to go through this commit-by-commit.  Note that merge commits are not super obvious but they have two parents, i.e. d4c0298 and b0c9558, and content besides message can be skipped.