merge from tulip master