Rewrote iflet and iflet2.