implementing version promotion