support <event_name>_<state> methods