each of the diagrams below represents a snapshot