slightly change logic