add DiscreteFactor