start reviewing on() off() trigger() methods