added Player interface