implemented destructive mode