add shortcircuit prevent resub