generally a for...if...break... pattern can sometimes more readably get replaced with a `while`