self upgrade!