Implement GenEvent.Behaviour