added changes from master branch