starting to look for do while replacements