preventing history bleed between calls