Diagram courtesy of Chris Gordon