check type
a play function