addAllEvents
add spyAllEvents()
add restore