added provision for upgrading