more work on the loop