add callback to demo