require a free function when deleting all values