storage needs to fire its own events