manually merged f1e09f6 from master
manually merged d21afbd from master
manually merged 483ca71 from master
Manually merged fe983d5 from master
manually merged 44a5538 from master