implemented player