while fix