temporary variables not needed