updated version with a significant change - should have been done last version