Add promotion function