Passing loops explained