each alert/confirm keeps track of it's own callback id