more updates from upstream