Added 'until' macro