upgrade wrapper