merge with changes with upstream:0fab3abfeff3cf7cec2d8af6830701262a622d9a

upstream issue #305