updates callback to match behaviour