added purge()