play accepts callback