update function matchPromotion, unMatchPromotion