Merged with latest upstream.