completed loops and detecting when broken