David Freddoso maps it out here.