needs to upgrade first, even though it is time consuming