ensure destroy() is called on all AEs