while better form for