Merged upstream changes.