upstream changes
merge fix