refactored accoding to code meetings