correctly handle multiple add_fun calls