implement full destroy