merge with upstream master and fix bug