added changes from master
added some more