# self-cleaning function