Upstream update
Merged upstream changes