added wipe()