implemented delete functions