Update with upstream

Merge changes with upstream.