dynamically allocated player