merge from upstream

How to