allow no callback to be passed