#4 some changes
conflict resolved