tweaks based on feedback
refactoring