Completed with several different types of loops.