fix scalar casts, need to call saturate