a first while pattern