implement event player utility