Copy and abstract upgrade