add "push" and "pop" events